FreeBasic Games Directory Forum

FreeBASIC Game Development => Work In Progress => Topic started by: Halifax on August 20, 2009, 02:55:17 PM

Title: FB RPG with RPGMaker GFX
Post by: Halifax on August 20, 2009, 02:55:17 PM
I'm baack! Finally cut myself off from WoW. Using a different (supported) IDE, FreeBasic, and RPGMaker graphics to create an RPG.

Resources I have and stuff I am able to do;

Complex Mouse Buttons and techinques, Basic Key Commands
Built in FB graphics using the processor, no accelerated stuff
Game timers enabling FPS independent movement, day night cycles, complex animation, etc
About 60 characters (animation frames for 4 directions, RPGMaker sprites 24x32)
One or two suitable tile sets (ruins/forest/lake/grass, RPGMaker 16x16 tiles)
Plenty of sprites for items, icons, overworld maps, etc

Resources I need and stuff I'll need help with;

Parallax backgrounds, animated and scrolling
Pathfinding
Graphics and map data compression/storage/packaging
OpenGL integration if necessary (would love a zoom function and multiple full screen transparency layers)
Special animations for the 60 sprites, attack, defend, cast, die, get hurt, speak, etc.
More tile sets. Desert, snow, cave, etc. I'll work on adapting the RPGMakers ones.
Mapping
Sound


Got lots to do obviously. Luckily, that's where the fun is.

Here's a screenshot mockup. Planning for 640x480, with static screens, ala Zelda 1. Simplifies the game quite a bit. 40*30 tiles.

(http://h.imagehost.org/0778/ViewPic2.png)



Notes of interest.

Pathfinding.

I'm using 16x16 terrain tiles with 24x32 character sprites. Allowing them to move along at one spot per 16x16 tile would work. I'll probably end up doing that, in which case I would not need true pathfinding, or at least nothing more than I already know. However, I'd love to implement higher definition movement. I was considering a 4x4 grid per 16x16 tile, creating a 160 by 120 grid on which units would take up 6x6 movement spots. This would bring immense complication to the pathfinding/rangefinding, etc. It would also allow smooth movement, realistic cast time functionality for spells (not in terms of turns), better AOE functionality, etc.

Static Screen Ala Zelda 1

Benefits are many. Reduced complexity of camera programming, map editor, map loading, mapping, list sorting (events, enemies, etc), event planning, pathfinding, large object handling, cloud layer. Difficulties include; limited encounter size, world map display will be wonky, and the BIG ONE, control placement/display.

Regarding on screen buttons, controls, info display, etc. I have three options.

1- Make all game elements simple. Such that they can be displayed with simple mouseovers or bars. This may be difficult. I tend to write a lot, I love item descriptions, location histories, etc. I also enjoy complex resource systems like mana, etc. This is the least likely option at the moment.

2- Create a static "no go" location on all maps. This will be overlayed by controls (possibly translucent) and will create problems with mapping, event planning, etc. A decent option, I can supplement this with game pausing full screen menus when absolutely necessary.

3- Permanent overlay cutting away a section of the screen. I.E. sacrifice the rightmost 2 or 3 tiles, maybe a bottom section. Lots of problems with this. Will I need a constant minimap display? Will I need a text scroller (which are super fun and awesome)? Will I have enough control elements to keep it filled? Will I even have enough gameplay to justify it? :)  I'd prefer not to do this if possible.

An interesting way to solve the #2 problem is to create two info panes. One will reflect information displays that never require interaction. HP/status display, location info, time info, current selected spell or whatever, etc. This info pane will warp to the opposite corner of the map as the mouse. The other info pane will contain all buttons. It will be in whatever quarter the mouse is in at all times. Problems would include how big it would have to be, since buttons will require text sometimes, etc. Can't block too much screen.

Anywho, lots of dreaming here.

On the practical side I have the following systems in place.

Terrain and Object layer display based on mockup map data
mouse and key monitoring with event processing
Complex character animation (seperate/changeable animation speed for each NPC)
Text printing (alpha, color fonts, pixel placement, centering)
"Demoability"... I can make a demo out of it for hosting
basic timers (sleeping to share CPU, fps independent animation, real game time)


Stuff I'll be working on...
Capping framerate and getting it to reach the cap on my comp :) (currently at 30 max with sleeping, 500 without, 2.1ghz tricore)
Framework for Buttons (this'll go quick)
Keybindings and key profiles (I.E. "Q" quits to main menu during game but ends game when at main menu)
Fonts based on bitmaps for special text
Game Time (Current time in game, how long played stored in gamesave)
Map Editor functions; saving/loading/place tile/terrain object layer toggle (should be quick this time around)
Water (graphics, animation, how to incorporate tiles into terrain layer drawing, pixel art, etc)
Spell art and animation
Menu art and animation
Menu structure and framework
Saving/Loading game and Map data

Cheers
Title: Re: FB RPG with RPGMaker GFX
Post by: Brick Break on August 20, 2009, 04:58:06 PM
Thanks to RPG Maker, your graphics look awesome. I personally would prefer scrolling rather than LoZ-style maps, but it's up to you. It sounds really impressive that you've gotten those timers working. That's always been a tough one for me. Why is the framerate an issue, though? These are sprites we're talking about.  ;D (I'm just saying that because my graphics card sucks and I might as well have everything software rendered, so if I can get near 30 FPS on Halo I'm a happy camper. You've never seen lag like I have.)

Um, as far as your paralax backdrops go- I would love to take care of them for you. You just want giant seamless sky images, right?
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on August 20, 2009, 08:31:52 PM
Not exactly sure why framerates have been low. It doesn't use the graphics card at all, so that's irrelevant. I'm using 100% FreeBasic built in graphic commands. It may be something to do with the structure of the graphics rendering. Or it may be a limitation of doing graphics on the processor. I'll be finding out shortly.

"Um, as far as your paralax backdrops go- I would love to take care of them for you. You just want giant seamless sky images, right?"

Good lord, no! Sky works and I would like some sky images, yes. But with LoZ style maps parallax becomes vastly more useful. Take this example.

For the first segment of the game, possibly a demo, I have planned for a starting town, a road following a river, a bridge, then some overgrown ruins buried in forest. An interesting use of parallax I wanted to put in was that halfway down the river road you would find a small offshoot path. Take it and you end up on a small ledge with some trees on hilltops beside you. The terrain tiles would cut off a quarter of the way up the screen and above that would be a foreshadowing scene showing the ruins buried in trees. Possibly a stylized caption would appear on screen indicating an upcoming game segment.

See example.

(http://a.imagehost.org/0185/Parallax_Test_2.png)

I'd love to have your help if you can draw. I would like to go with cartoony style, similar to the RPGMaker graphics I'm using; bright and cheerful. If you can do clouds you may consider making me a cloud layer to be put translucently over the game screen that will scroll at different speeds in different directions.
Title: Re: FB RPG with RPGMaker GFX
Post by: Brick Break on August 20, 2009, 11:52:17 PM
Greenfish Icon Editor Pro, Microsoft Paint, and about 2 hours give you the following.

http://www.mediafire.com/?sharekey=83dcabc70338ca405a3d773badf214306a224f67e8657ee5ce018c8114394287
Title: Re: FB RPG with RPGMaker GFX
Post by: Brick Break on August 22, 2009, 07:50:42 PM
How do you like my graphics?
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on August 31, 2009, 06:02:14 PM
Update

Buttons - done and lookin' hot. button profiles, nice graphics, hover indicator, clickability

Saving/Loading - able to save and load tile data to a storage file (still workin' on reducing size)

Alpha Layer - not using per pixel alpha but still looks great. double precision speeds for cloud movement, 4 directional "wind", etc

Next I'll focus on;

Tile Selector
Tile Changing


@Brick Break

My favorite is the desert, looks like a water color/spray paint beach kinda thing.

I can't use the cloud layer, it looks too boxy with this screen size. I may be able to magnify it a bit, make it like huge clouds drifting along. We'll see.
Title: Re: FB RPG with RPGMaker GFX
Post by: Brick Break on August 31, 2009, 06:23:31 PM
Alright, I can make you a new cloud layer no problem. I'm glad you like the paralax maps. I tried to aim for a nice monochromeish visual style.
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on October 09, 2010, 03:02:00 AM
(http://b.imagehost.org/0494/Game_Screenshot.png)

Update...

Up next-
Events
Map switching
Linking the overlay display (clouds) to the map instead of the screen
Tidying up the menu
Fixing unit movement
Implementing animated objects
Acquiring normal objects for world map
Rough draft of world map
Minimap/map function
Title: Re: FB RPG with RPGMaker GFX
Post by: Lachie Dazdarian on October 09, 2010, 05:08:36 PM
If you are looking for hardware accelerated graphics, I think you should seriously consider GL2D, an cross between OpenGL and fbgfx, aimed to be easy to use as fbgfx. It came out quite recently.

Forum thread on GL_2D: http://www.freebasic.net/forum/viewtopic.php?t=16222
Tutorial: http://imortisoft.no-ip.org/b2b/?Issue_%232:Basic_2D_Rendering_in_OpenGL_using_Easy_GL2D:_Part_1

I definitely plan to code all my future 2D project with it, possiblity support plain old fbgfx for a while too.

As for path-finding, you might want to check out this thread: http://www.freebasic.net/forum/viewtopic.php?t=9952&highlight=pathfinding

There are more tutorials and forum to find on this topic. Research. Personally, I haven't dealt with this so far, so can't recommend anything specific.

I hope you will insist on drawing your own graphics. People get discouraged too fast when contemplating about graphics for their game, or if they try, they limit themselves on really rudimentary and simple creations, like trying to prove themselves they can't deliver anything better. It's not that hard to make decent graphics for a top-down RPGs, especially if you are imitating a style (just start with slightly altering pre-made NPCs and tiles, and go further after mastering that). It is a lot of work many people would like to skip while designing a game, but it doesn't work like that. I do wish people would think smaller more often and make excellent small-scaled games, very well though-out and designed, than deliver some overwrought, unnecessary long and dull RPGs, filled with underdeveloped content. Indie developers need to think smaller, or agree to devote to a project for years, and just too many things happen to people in that time for such ambitious project to survive. I hope you are going the first road.

I love your enthusiasm so far. Good luck.
Title: Re: FB RPG with RPGMaker GFX
Post by: Brick Break on October 09, 2010, 08:21:29 PM
I would not recommend that you use hardware accelerated 2D graphics or rely on OpenGL. The speed benefits are unsubstantial as any hardware accelerated/software rendered 3D game, except that 2D graphics run insanely fast anyways. Insanely fast. I could make a JavaScript game with tiled 2D graphics that runs faster than any 3D game, and that runs at an extremely high level.

Good luck with your game, though. Kudos.
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on October 19, 2010, 07:35:56 PM
OpenGL and 2D Acceleration

I downloaded the OpenGL program Lachie directed me to and gave it a try. It seemed to run no faster than my game. Not only that, but I'm not using threading at all, so separating the graphics onto another cpu seems silly. Anyway, it'd require learning all the OpenGL stuff, which I've never been motivated to do.

That said, the OpenGL/FB integration is something I've always dreamed about. Could be an excellent stepping stone to 3d programming (no "could be" about it, really). Either way, I already have the ability to make my 2d game function without OpenGL so, no reason to upgrade until I have too much content and/or aspirations for FBGFX. In the past I was looking for accelerated 2d stuff, but that was due to failing to program efficiently.



Lachie:

I've browsed through pathfinding stuff in the past a bit, plenty of resources I'm sure. I intend to put it in soon, however, in line with your advice, I'm aiming for super simple. I've aimed too high before, ended up getting nowhere. Right now my highest goal is to have a single unit walking around on the world map and battle AI consisting of units moving toward other units (ala early Ultima). Just something to get a framework up.

As for making my own graphics... Eh. Really not too likely. Don't get me wrong, I cut and paste tiles for hours, move unit legs around to get the animations right, plenty of tile work. Hours of it, in fact. And I do enjoy it.

The only completely original work I've created so far is the menu background, which consists of 5 line statements.

But I know what you mean. I'm about to have to create a set of tiles representing a river on the world map from scratch. I'm pretty excited.
Title: Re: FB RPG with RPGMaker GFX
Post by: Brick Break on October 19, 2010, 07:45:36 PM
Down with the graphics card industry, down with the gaming industry, and down with capitalism! The film industry WILL make a comeback, and without any "3D" or gimmicky bullshit like that! I'd like to see some '80s color films revisited. Think Starsky and Hutch. Bonus points if they're independent.
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on July 25, 2011, 07:12:48 PM
(http://img685.imageshack.us/img685/5347/gamestate72511.png) (http://imageshack.us/photo/my-images/685/gamestate72511.png/)

Uploaded with ImageShack.us (http://imageshack.us)

Been importing new tiles, got the menu system a little neater.

Looking at teleport events, perhaps some static events that control weather and whatnot. Got some of the internal functionality of NPC control, i.e. AI or Player control, switching party members, stuff like that. Map switching is done, having some issues with walkability though.

Can't decide if I want to implement a system to show the roof of a building when you're outside, then remove the roof tiles when inside. Seems more complex, so probably gonna be skipped.
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on August 14, 2011, 11:22:15 AM
Bit of a break through, this week. Found out my program wasn't actually fps independent so I toyed with it and got it on a timer system. This freed up my animation subroutines to run at 10,000 cycles per second. As you can imagine, this changed my animation techniques quite a bit.

Worked with it a bit more and got my movement system working much better. There are now many different levels of speed at which a unit can move, opening up the way for cool gameplay like speed boosting equipment or temporary buffs.

Framerate seem to be much smoother, too. Maintaining 50 with vsync and full screen alpha puts without a hitch.

Course, then I promptly overwrote my file and now I have to do it all again. Oh, well. Easier the second time.
Title: Re: FB RPG with RPGMaker GFX
Post by: N3trunn3r on August 24, 2011, 11:56:14 AM
Hey hey hey, this look really awesome nice!!! 8)
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on September 26, 2011, 08:47:55 PM
Well, for better or for worse, I've moved my game to a pixel based movement system.

Each NPC has
Acceleration (rate at which speed climbs and falls)
     &
Speed (maximum pixels per sub iteration, divided between H and V axes)

Now all I gotta do is work out the formulas for pathfinding and AI on a high definition grid  0.o

At the most basic level I'm gonna need the ability for an NPC to move towards its destination but edge around objects at a low enough slant. After that, as long as NPCs can find each other, I can add simple range finding for certain spells, etc.

First up, making NPCs move toward their destination using the proper ratio, in stead of diagonally till they intersect the closest axis.
Title: Re: FB RPG with RPGMaker GFX
Post by: Lachie Dazdarian on September 27, 2011, 03:04:06 PM
Any chance for a video showcasing the engine?
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on September 28, 2011, 01:05:29 PM
If there is one thing that bothers me, it's developers who won't take a minute fraction of their day to spit out a simple "demo."
Here is an executable along with the graphics and source code.

http://www.mediafire.com/?9pw0yjq5z056mya (http://www.mediafire.com/?9pw0yjq5z056mya)

Several things to note:

Extract anywhere and run the program Demo.exe
"Esc" to end program.
"M" to open the menu.
Right Click moves the character you are controlling.
Left click does nothing (possibly)
Click the maximize box to enter full screen mode, doesn't work too well with widescreen monitors.
The only things of interest on the Battle Map are at the very bottom.
The unit seems to move faster depending on your cpu speed... gonna hafta fix that.
The program is primarily a tile editor, see if you can figure it out!
Title: Re: FB RPG with RPGMaker GFX
Post by: Lachie Dazdarian on September 28, 2011, 01:45:15 PM
You are still using pure GFXlib2? Anyway, it scrolls smooth enough. Nice. Your engine coded from scratch?

So how far are you in developing this game? Still messing with the engine, or started coding the actual game? Do you have the story laid out?
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on September 28, 2011, 06:22:22 PM


Yeah, using GFXLib still. I've had serious urges to move in the
direction of integrated OpenGL and 3d, etc. Been learning the geometry slowly. I just believe it's best for me to get the entire game structure built before niggling with details. More interesting, anyway.

From scratch, yeah, pretty much. Obviously I'm using high level FBGFX commands, ya know, not doing custom PUT functions or anything. Or, God forbid, ASM (shudder). But the tile display, timing system, input routines, etc are my own. With lots of help from the FB community, of course.

As for completion %, I'd say about 10%. I am constantly rebuilding and trying new things with the engine. I'm sure that if I forced myself I could build a complete game with any of the previous iterations the engine has underwent, I just seem to be uninterested in story/mapping.

I have a couple of simple guidelines for teh story;

1 - Open world - free exploration, large play fields, large amounts of less "deep" gameplay. I.e. spend development hours on content, not quality. For example, Fable vs Oblivion (a large amount of semi random caves vs a few unique caves)

2 - highish level of realism - no fighting Gods or conquering empires. Even the best swordman should be overwhelmed by 4 or more opponents. Magic should be subtle and rare. (or a major part of the story)

For gameplay I have a few guiding principles;

1 - challenging at all times - the best gear and abilities in the game should not lower the challenge of any encounter too low. You should never be able to auto attack through any fight.

2 - Low levels of HP and damage - I want to keep HP to two digits, and damage to below 25% of any given enemies HP. If I don't have HP at all, it should be slower combat. Think Everquest (3 minute fights) vs WoW (15 enemies per 20 second fight)

3 - never obviate mechanics - healing items should be limited by money, availability, and scarcity, never by a cap or effeciency. Currency should always be relevant, and a consideration in every financial decision.
Title: Re: FB RPG with RPGMaker GFX
Post by: Lachie Dazdarian on September 29, 2011, 12:05:33 AM
I like your approach to both story and gameplay. I always preferred a bit more "realistic" fantasy stories, and definitely more grey (not clear good and bad side). Also, consider the player controlling different (and maybe antagonistic, not necessarily arch enemies) characters. I remember playing a great indie and freeware RPG entitle Love and War (http://antioch.snow-fall.com/law/ (http://antioch.snow-fall.com/law/)), where, beside playing the main character for 90 % of time, there were few really cool episodes where you played alternative characters, either friends or antagonists of the main hero, and these episodes provided great insight into the background and motives of these characters, which added depth to the story.

If you are interested I could try to create a setting and outline of the plot for you (I was always interested in doing something like that), and maybe that will motivate you to build around it. You'll just have to give me a rough sketch of setting/races characteristics I can work with.

Also, I hope you will work on the gameplay based on few, but strategy-demanding battles. I always disliked console style RPGs that forced you to play hundreds of easy battles to level up and be able to beat some boss.
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on October 02, 2011, 12:25:12 AM
Sounds like a fun idea.

Instead of making a large storyline for the whole game, focus instead on a suitable story for a demo. Create a simple but memorable character, a small scale event to drag him/her into, and a quick resolution. Later, in the full game, this character could make a small cameo or something.

Here is something off the top of my head.

A wizened old drifter scrapes his way into a dusty, barren town on a cold night, and spends his last few coins on a late dinner and a dingy room.

As the day dawns he wanders out into the scrub in search of water, only to discover the riverbed has completely dried up long ago.

Asking around the town, he learns that the spring in the nearby hills was buried by a band of trolls.

Hm, getting off track here, but something simple like this will serve fine.

Couple of guidelines -

stick to creatures and people included in the RPGMaker RTP sets, or something similar. The animation is set up a certain way, and it'd be lame to have some units be totally different graphically.

Similarly, the setting must be in a geographical location included in RPGMaker. The desert town set is not well fleshed out, etc.

A cave would be cool. And easy.



About the pacing and difficulty of battle -

I envision battles involving up to 18 units, a limit which I intend to reach fairly quickly. I like the concept of a small scale skirmish.

If I do a tile approach, I'd like between unit scuffles to last several turns at least, with time for planning the opening tactic, time to try alternate tactics, and time to move another unit into the action.

However, if the pixel based thing works out, I would prefer to create a single main character. The AI for multiple pixel based combat units would be pretty complex, imo. With a single character you could do some cool lone wolf thing. You could always allow the character to summon other creatures, who would have limited capabilities (thus simplifying the AI). Also, manipulating the enemies would be central. Traps, slowing effects, artificial summoned barriers, illusion magic, all of these would fit well with a single unit running around the screen.
Title: Re: FB RPG with RPGMaker GFX
Post by: Lachie Dazdarian on October 03, 2011, 02:07:42 AM
You got mail.
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on October 08, 2011, 08:45:44 PM
Big improvements, today. Using Lachie's tutorial on simple geometry I got the units moving properly. They all slide toward their destination at the proper angle, at a set speed (which will later be set according to an acceleration scale). Also made a new MiniMap. It updates only the areas it needs to display, only when that area has changed. So, it's useable in real time (for example, on the walking around screen), and as a static display (in the menu, large size). Now I just gotta set the individual colors for each of the 1120 tiles...

Perhaps some sort of averaging function would be appropriate. Simply average the colors of the pixels in the tile... Hm. Man, I've programmed for 10 hours straight. And I just got that urge to do more!

Bah, not gonna happen. Turns out the average color of a tile filled with brown and green is purple. Just wouldn't look right.
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on October 27, 2011, 06:42:32 PM
Putting this on hold for just a wee bit while I dig into Blender. Fun stuff!
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on November 15, 2011, 07:46:31 PM
Back at it, mixing up the menu systems. Adding Radio Buttons and a new menu graphic system, more flexible. Gonna end up with direct text buttons, radio buttons with and without text, and buttons with pictures, with or without text.

(http://img850.imageshack.us/img850/9260/gamess111511.png)
By veeshanam (http://profile.imageshack.us/user/veeshanam) at 2011-11-15

Having a bit of trouble with automagically generating maps based on bmp data. I use paint to make a simple map, green for grass, deep green for forest, etc, then generate a map file with the data. Then my map modification file goes in and fails to automatically edge the different terrain types. Gonna be a bit of work.

EDIT : Radio buttons done, bit tricky but very fun to make, and they look freaking awesome. Still no luck on the map modification, that's some crazy logic.
Title: Re: FB RPG with RPGMaker GFX
Post by: 3D on August 30, 2012, 03:56:39 AM
this looks really interesting any new progress Halifax?
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on March 13, 2013, 06:35:06 PM
I did make a little video.

http://www.youtube.com/watch?v=B0v9GlX8sn0

I haven't made much progress since the video or since my last post. I've been busy buying a house and, frankly, I'm lazy. Losing interest :(
Title: Re: FB RPG with RPGMaker GFX
Post by: sirToad on March 23, 2013, 09:51:45 AM
Good work though. Maybe you'll go back to it later. I take long breaks but always seem to return to projects.  8)
Title: Re: FB RPG with RPGMaker GFX
Post by: Lachie Dazdarian on March 23, 2013, 10:11:15 AM
I take long breaks.... :/
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on October 08, 2013, 05:13:49 PM
Back at it. Added a scrolling chatbox. Should be able to do cool things like different colors and fonts and cool looking text borders. Need to add buttons to it for conversations, vendor choices, etc.

Thinking of adding a bit of combat functionality. Probably going to go with direction and range based auto-attacking that registers damage in the chat box every few seconds.

At this point my vision for combat is close to Ys with a few differences. One, combat will take significantly longer per enemy. Two, you'll aim range attacks and spells with the mouse. Three, it'll be significantly more complex. Four, it will incorporate rock/paper/scissor type mechanics. Five, it will emphasize and reward preparation and tactics.

I intend to have ranged attacks and spells fire at a certain trajectory, based on the direction of the mouse. Some will track or move randomly but others will fly in straight lines, requiring aim.

With this system the most complex thing I'll need is A* pathfinding, which should be doable.
Title: Re: FB RPG with RPGMaker GFX
Post by: BadMrBox on October 09, 2013, 08:14:36 AM
Nice to see you havent abandoned the game :)
Title: Re: FB RPG with RPGMaker GFX
Post by: Lachie Dazdarian on October 15, 2013, 08:47:52 AM
Keeping it under my eye.... :)
Title: Re: FB RPG with RPGMaker GFX
Post by: berrian on January 27, 2014, 02:48:10 PM
Pitty!  :)
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on June 04, 2014, 07:00:50 PM
Progress & Plans

AI Modes – I have the following AI behaviors; Wander (random movement), Attack (move toward player and turn on attack when in range), and Dormant. I haven't made Flee yet; I need to be able to identify safe zones. A shortcut would be to just run from the Player.
Party Members – technically there is a party system in place. It doesn't work well, pretty convoluted. However, at this point party members won't attack themselves, and will follow each other in a line. Maybe.
Particle System – improved this quite a bit. Particles can be spawned by any NPC (although for some reason the first NPC seems to get the lion's share of new spawns...), can die via timed expiration, distance from origin, or collision, and have full collision checking with NPCs and terrain.
I can now do spells and effects; one use is to have gathering nodes (which are technically NPCs) spawn particle effects, like glittering fireflies or something.
I need to work out where particles spawn when created; should be at X distance from spawning entity, along the angle it will head. Should be easy.
Teleporters – only need a bit more work. So far they teleport any qualified entity and start an effect that can be changed, and will be eventually. Got a nice fade in now.
One problem I'm having is determining the destination of the teleportee. I need to make a “search area” routine to find a viable destination. So far my units are being teleported atop one another :)
I've made them quite efficient, fps-wise. The collision detection on teleporters is going to have to be very efficient, since there may be hundreds on each map. I've made them able to be rectangles, so I can cover the entire map edge with just one teleporter. However, since they have to check each NPC every frame, it's still pretty expensive. I need the collision detect rate to be pretty high, since it's annoying to have to stand in one for a second before it teleports you.
Depending on the ratio of NPCs to Teleporters, it might be more efficient to have each NPC check all Teleporters when they move instead of every frame. At this point, I've got a system that limits teleporter checks so we'll leave it at that until I have a fully functioning map, with relevant amounts of each.
Entity Editor Panel – rudiments are up; I kind of need custom buttons here. This panel will be vital for testing and creating content, especially combat. Ideally I'd like to be able to monitor a unit's AI decisions, etc, live while playing. As well as create/destroy/edit entities.
Chat Window – got this up and running nicely. Not a lot of flexibility yet, though. Still need to implement being able to display pictures (non-text) stuff in it. Something like a progress bar, or whatever. Perhaps icons for items. Also need to get custom buttons working, so I can have choices here; i.e. dialogue.

Problems & Projects


Scope – turns out I've been a horrible programmer this entire time :)  Scope problems abound; I didn't fully understand what people meant when they say, “global variables cause problems.” I've been using variables within subroutines that are also used in both the routine that called it and in routines it calls; leading to many shenanigans. Fix is work in progress.
Buttons & Menu Structure – back when I was playing World of Warcraft I got a sense of just how complicated interfaces can get. I underestimated. I'm currently working on a parent/child system to allow buttons to identify each other, allowing simple dialogue boxes atop other windows, etc. Otherwise, I'm going to have to go super simple like Ultima style menus. That's not bad, I suppose.
Unit Radius – I'm using 24x32 sprites. That leads to a natural radius of perhaps 6 for small units, and 12 for big units that touch the edge of the graphic. However, the inclusion of variable sized units throws huge wrenches in multiple systems. Not sure if I'll be able to retain variable unit radii.
User-Defined Type Conversion – I failed to find a way to convert one custom Type into another custom Type (without explicitly listing each separate variable). This is going to be a pain when dealing with integers and singles; both of which are used frequently (Integers for mouse coordinates, tile coordinates, etc, singles for timers, NPC coordinates, etc).
Currently I'm simply doubling up my functions, naming them appropriately; IsPointOnScreenInt and IsPointOnScreenSng, etc.
Valence Points – I need a good solution for NPC walkability, pathfinding, etc. One idea I had was Valence Points; a set of points at certain locations around an NPC (or Teleporter, or whatever) that can be Occupied/Empty. So for example when enemies are surrounding you, they will seek out these Valence Points rather than simply moving straight toward you, arranging themselves in a circle around you naturally. It will also help AI, for example when determining what strategy to use to attack; range or melee. If all nearby Valence Points of your target are filled, use ranged. If one VP on the other side is empty and you have no ranged, use Sprint. This also works with store keepers (wait in line since his one VP is filled), Party Members (escort mode, formations), and teleporters (so you don't all cluster at one little corner).
Ooh, good idea! Use Valence Points on teleporters to set destination coordinates! If all available Valence Points at the destination are full, don't teleport yet.
This system is one that causes problems with variable unit radii. VP locations and “layers” will change depending on unit size, and that creates huge complexity. This is like handling multiple tile units in a tile game; always more complicated.
Basic Combat – started on some basic combat elements; damage, death, regen, spawning, etc. I've got a “master entity” spawning child mobs in a certain area when it has under a certain amount of children. This will be the basis for random mob spawning, as well as gathering node spawning. Auto-attack and damage work, so when I kill a mob it (fails to) spawn another. Currently I'm fighting my muddled Party system to stop NPCs from attacking themselves and non-active mobs, etc.
Title: Re: FB RPG with RPGMaker GFX
Post by: berrian on June 05, 2014, 12:52:28 PM
That's cool. Good to know!
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on January 31, 2016, 08:17:56 PM
--- Bit of a delay involving depression and love, nothing major! ---

Yay, back at it, sorta! I've largely stopped gaming these days and that includes interest in games generally. However, I do still get urges to program. To whit;

Here is development video #2: https://www.youtube.com/watch?v=LK6ZFeD7WGI

That one is pretty old, here is the newest: https://www.youtube.com/watch?v=KttiENN08U0

As you can see I can ramble.

So.

I won't restate anything in the videos, that seems to be my preferred logging method these days; I'm enjoying uploading gameplay footage and making commentary.

My current plans are thus;

Implement a functioning Looting/Backpack/Merchant system. I need to be able to loot corpses, deposit items in containers like campfires, and buy/sell to merchants.

and... that's about it really.

Adding that system will unlock quite a bit;

I plan to release another video showcasing gameplay, as opposed to focused on talking/updating/informing. So I'd make a big play field with random scattered mobs, merchants, and guards. That'll allow me to record a nice long video, as well as provide a base reference point to compare added functionality. So when I add hunger systems, firewood harvesting, crafting, complex combat, spells, AI behaviors, etc, viewers can see the difference clearly.

As for engine level goals, I'm working with the following paradigm;

Effects, Behaviors, and Skills. Behaviors use Skills, Skills apply Effects, Effects affect Behaviors. Obviously there are many contradictions here; I've merely settled on something that works and I'll fit everything into this paradigm regardless of what is intuitive.

I've made some pretty good improvements regarding performance; did some optimization, added some debugging, getting better at understanding frames and how to use them. My timers are working well, having lots of fun with those.

After that, it's a straight road to the first demo!

The engine is largely functional; it's just adding content. I'm sure a few system here and there will be required, spells will need some work. Oh! Dialogue. That's right, that's a big one to be added. Oh, and Factions. Toughie.

Hard Question; will items be "alive"? For example, I intend to have a campfire fed by firewood. Will firewood in your inventory get wet in the rain? Will meat rot? Will potions lose efficacy?
Hard Question; will I include lighting? It's very easy in 2d tile games, adds a LOT for little effort.

Anywho, watch this space for a video!
Title: Re: FB RPG with RPGMaker GFX
Post by: ecxjoe on February 17, 2016, 08:27:05 AM
This is great! Keep up the good work. :)
Title: Re: FB RPG with RPGMaker GFX
Post by: Dr_D on February 25, 2016, 11:43:34 PM
Agreed. It's good to see something like this in progress. Gives me the itch to do some FB stuff too!  ;D
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on March 27, 2016, 08:57:18 AM
Well, I edited my previous post to strike out the things I've completed since. Just about ready to strike out looting corpses as well.

Got a lot of progress toward the next video, as usual (and as is apparently typical in the field) it's hard to make oneself stop at any given point and make a video; one is always driven to achieve just that little extra feature that'll add so much oomph to the next update. I saw this writ large with Josh Parnell's Limit Theory.

However, given the scale of the revamp that was required to get campfires working properly (rather than just hacked together piecemeal), I now have to repair much of my previous structure regarding Behaviors/Skills/Effects of my monsters. Can't really do a video when monsters are malfunctioning, even if their corpses drop loot (almost, anyway).

So far it's been about 12 hours of work from my last video, I'd estimate another 6 max. Given the accuracy of my previous estimate, which was 6 total, we'll see.

Sadly one major project I ran into is that I have to do almost another entire map. At minimum I need roads, rivers, and bridges connecting two towns around a lake. Sounds like not much but my tile editor is fairly lacking. Slow going there.

Back to the keyboard!
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on April 23, 2016, 01:29:11 PM
And here it is. https://www.youtube.com/watch?v=FnKpKXq6WAc&feature=youtu.be

Title: Re: FB RPG with RPGMaker GFX
Post by: Lachie Dazdarian on February 06, 2017, 07:17:25 PM
Looks very complex and intriguing. How is it developing? What's the status now?
Title: Re: FB RPG with RPGMaker GFX
Post by: Dr_D on February 09, 2017, 10:48:59 PM
Wow. It's awesome that you're still working on this. I admire your dedication! It's looking really good too. :)
Title: Re: FB RPG with RPGMaker GFX
Post by: Halifax on January 16, 2018, 05:31:42 PM
Thanks all for the interest, I'm officially closing this Work In Progress, not due to abandonment (though that is still likely) but because I've moved the game on to other engines (Java, Slick2d, Unity, and C#)! Check out the linked Youtube channel for updates (though there aren't any yet)! Thanks, I love you all.

(figured I'd do the courtesy of wrapping this up)

PS - the primary reason I moved to other engines was lists. Developing a comprehensive approach to lists was beyond my capabilities (and interests) and lists are absolutely crucial to just about anything it appears. I'm sure there are fantastic solutions to lists in FreeBasic, I just figured that if I was going to start importing libraries into my game I may as well go whole hog. Toodles!
Title: Re: FB RPG with RPGMaker GFX
Post by: Lachie Dazdarian on October 07, 2018, 07:46:43 AM
A shame. But life goes on.