Fires of Heaven Guild Message Board  

Go Back   Fires of Heaven Guild Message Board > Fires of Heaven Related Forums > Uberworlds Development Forum
User Name
Password
ForumSpy Register FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Search this Thread Rate Thread Display Modes
Old 03-01-2008, 04:28 AM   #31 (permalink)
Vinen
A Cat is Fine Too
 
Vinen's Avatar
 
Join Date: Oct 2002
Location: Not in fucking Acton, MA anymore!
Posts: 2,888
Nice, never thought of it that way; makes perfect sense.
__________________
Vinna, Feral Druid, Stormrage Server
Len, Disciple of Khaine, Averheim Server
Hope is not a strategy
Vinen is offline   Reply With Quote
Old 03-01-2008, 04:43 AM   #32 (permalink)
Throag
Registered User
 
Join Date: Aug 2002
Location: Paris
Posts: 341
+0 Internets
Happy I helped
Don't hesitate to ask more questions, I'd be glad to help more on that kind of stuff. Anyway, if you are serious about that, I suggest you try to find some books on object oriented programming it will help a lot grasping more of the available possibilities.
Throag is offline   Reply With Quote
Old 03-01-2008, 02:50 PM   #33 (permalink)
Cloud9_
Registered User
 
Join Date: Jul 2002
Location: Los Angeles California
Posts: 228
+9 Internets
Send a message via ICQ to Cloud9_
Almost done with the very basics of my battle engine; put together some screenies for some friends who were interested in the project so I figured I'd share them here.

(note that all the sprites will be changed when I get around to doing them... AKA after the engine is done. Also this game will be very very very short, think "intro" to FF1 short where you fight garland and return to the very 1st town)

Shackpics - Intro Screen!
Shackpics - TestMap
Shackpics - Battle!
Cloud9_ is offline   Reply With Quote
Old 03-02-2008, 01:24 PM   #34 (permalink)
Kharza-kzad
Registered User
 
Join Date: Jun 2005
Posts: 133
+0 Internets
Looks fun!

I'm jealous, been doing nothing but tools and art, don't have anything working yet.
Kharza-kzad is offline   Reply With Quote
Old 03-02-2008, 03:35 PM   #35 (permalink)
Cloud9_
Registered User
 
Join Date: Jul 2002
Location: Los Angeles California
Posts: 228
+9 Internets
Send a message via ICQ to Cloud9_
i should actually program tools like a map editor and stuff, even if its just for the learning process since i've never made game tools before... all i've been working on is the core engine and "how the game works" type stuff.

- battle background + sprites are from squaresoft, the other stuff was put together as placeholders

- the tiles are from a tutorial I got a while back, since my TileEngine is a heavily modified version of that tutorial.

I figure once the battle engine is done (i'm writing the actual logic and stuff now, gonna have to refactor it heavily after I'm done.. i just want to get it into a working state at the moment) I will try to think of other systems I may need and try to build those, and once the core engine is done i'll make a "mini rpg" .. and depending if there is interest from other beginning programmers / friends / online communities who want to try and make a "medium length" rpg with the engine, we could try that too.. for anything bigger than a mini rpg though, would need proper tools that I just have not gotten around to yet
Cloud9_ is offline   Reply With Quote
Old 03-03-2008, 04:48 PM   #36 (permalink)
Kharza-kzad
Registered User
 
Join Date: Jun 2005
Posts: 133
+0 Internets
Early prototypes are great, so I think you are going at it the right way.

I am planning on doing the same, but alot of my prototyping needs a bsp in place, so I'm doing all the bsp build tools for now. 3D is a bit harder to dive into than 2d.

But other than that, I'll probably build one skinned mesh and use that for every character and npc in the game, and skip any other fluff and just get it running
Kharza-kzad is offline   Reply With Quote
Old 03-04-2008, 06:16 AM   #37 (permalink)
Hachima
Registered User
 
Join Date: Oct 2004
Posts: 1,697
Quote:
Originally Posted by Throag View Post
Seems like you are trying to hard code a lot of stuff Vinen.
What you are trying to do could be defined as behavior for each character.
This behavior could be an attribute of your Character class, and at each frame your game engine would iterate over all your Characters who would in turn process their behavior.
You could have a BasicBehavior class which would be responsible for the basic behavior of a character during battle (whatever that it is you define as "basic"). That class would be the default behavior attribute of a character. And then you can have as many class as you want inheriting from BasicBehavior to implement more specific behaviors such as the one you explained.
This way you can define as many behaviors as you want and change them whenever you want. You could also manage them through a BehaviorManager singleton class which would return an instance of a behavior class on demand.
You could also define your behaviors in a way that allows a Character to have multiple behavior and process them all at each frame. There are a lot of ways to improve that idea
When designing game mechanics like these, you should always try to think them as evolutive as possible. It saves a lot of work for later when you are trying to change stuff.
I'd have to agree. That sounds like the decorator pattern to me. There are a lot of design patterns that can be applied to gaming. State pattern, command pattern and factory pattern are just a few that come to mind. I highly recommend Head First Design Patterns Amazon.com: Head First Design Patterns (Head First): Elisabeth Freeman,Eric Freeman,Bert Bates,Kathy Sierra: Books

It has a nice casual tone to it, and it is real easy to follow.
Hachima is offline   Reply With Quote
Old 03-04-2008, 08:04 AM   #38 (permalink)
Vinen
A Cat is Fine Too
 
Vinen's Avatar
 
Join Date: Oct 2002
Location: Not in fucking Acton, MA anymore!
Posts: 2,888
Quote:
Originally Posted by Hachima View Post
I'd have to agree. That sounds like the decorator pattern to me. There are a lot of design patterns that can be applied to gaming. State pattern, command pattern and factory pattern are just a few that come to mind. I highly recommend Head First Design Patterns Amazon.com: Head First Design Patterns (Head First): Elisabeth Freeman,Eric Freeman,Bert Bates,Kathy Sierra: Books

It has a nice casual tone to it, and it is real easy to follow.
Nice, going to go ahead and order that book...
__________________
Vinna, Feral Druid, Stormrage Server
Len, Disciple of Khaine, Averheim Server
Hope is not a strategy
Vinen is offline   Reply With Quote
Old 03-04-2008, 02:10 PM   #39 (permalink)
Kharza-kzad
Registered User
 
Join Date: Jun 2005
Posts: 133
+0 Internets
I use observer alot for input (controllers, keys) and network stuff. And command for sending stuff back and forth. And bridge for somestuff.

I'm not a huge fan of state machines. Maybe I just haven't seen one done right but they seem like a house of cards to me.
Kharza-kzad is offline   Reply With Quote
Old 03-04-2008, 03:05 PM   #40 (permalink)
Vinen
A Cat is Fine Too
 
Vinen's Avatar
 
Join Date: Oct 2002
Location: Not in fucking Acton, MA anymore!
Posts: 2,888
Quote:
Originally Posted by Kharza-kzad View Post
I use observer alot for input (controllers, keys) and network stuff. And command for sending stuff back and forth. And bridge for somestuff.

I'm not a huge fan of state machines. Maybe I just haven't seen one done right but they seem like a house of cards to me.
I dunno, I tried otherwise but I am currently using a State Machine for the RPG I'm working on. It's nice for pausing, loading screens, etc...
__________________
Vinna, Feral Druid, Stormrage Server
Len, Disciple of Khaine, Averheim Server
Hope is not a strategy
Vinen is offline   Reply With Quote
Old 03-05-2008, 10:58 AM   #41 (permalink)
Cloud9_
Registered User
 
Join Date: Jul 2002
Location: Los Angeles California
Posts: 228
+9 Internets
Send a message via ICQ to Cloud9_
I've come to the conclusion that the way I'm handling my gamestates is actually making my job harder After some searches, I notice the main method to use is stacking gamestates so when the game is paused, it doesn't 'destroy' the previous state.. just draw's over it until unpause which would pop the paused state off the stack.

I saw the microsofts GameStateManagement demo and am reading through it, but I'll have to play with it a ton to fully understand what its doing (yay for beginning programmers )

So let me ask you guys, how are you handling your GameStates? Any good tutorials for getting a basic one set up ?
Cloud9_ is offline   Reply With Quote
Old 03-05-2008, 12:25 PM   #42 (permalink)
Vinen
A Cat is Fine Too
 
Vinen's Avatar
 
Join Date: Oct 2002
Location: Not in fucking Acton, MA anymore!
Posts: 2,888
Quote:
Originally Posted by Cloud9_ View Post
I've come to the conclusion that the way I'm handling my gamestates is actually making my job harder After some searches, I notice the main method to use is stacking gamestates so when the game is paused, it doesn't 'destroy' the previous state.. just draw's over it until unpause which would pop the paused state off the stack.

I saw the microsofts GameStateManagement demo and am reading through it, but I'll have to play with it a ton to fully understand what its doing (yay for beginning programmers )

So let me ask you guys, how are you handling your GameStates? Any good tutorials for getting a basic one set up ?
I stack them. I modified the library which is supplied as part of the XNA Unleashed book.
__________________
Vinna, Feral Druid, Stormrage Server
Len, Disciple of Khaine, Averheim Server
Hope is not a strategy
Vinen is offline   Reply With Quote
Old 03-05-2008, 12:45 PM   #43 (permalink)
Cloud9_
Registered User
 
Join Date: Jul 2002
Location: Los Angeles California
Posts: 228
+9 Internets
Send a message via ICQ to Cloud9_
heh have not gotten around to getting Unleashed yet. Worth it for someone still very new to programming or would it be over my head?
Cloud9_ is offline   Reply With Quote
Old 03-05-2008, 01:41 PM   #44 (permalink)
Vinen
A Cat is Fine Too
 
Vinen's Avatar
 
Join Date: Oct 2002
Location: Not in fucking Acton, MA anymore!
Posts: 2,888
Quote:
Originally Posted by Cloud9_ View Post
heh have not gotten around to getting Unleashed yet. Worth it for someone still very new to programming or would it be over my head?
Very worth it. From what you've done chances are you will understand it. Keep in mind the book was written for a prior version of XNA so some code is obsolete / doesn't work.
__________________
Vinna, Feral Druid, Stormrage Server
Len, Disciple of Khaine, Averheim Server
Hope is not a strategy
Vinen is offline   Reply With Quote
Old 03-05-2008, 04:40 PM   #45 (permalink)
Froofy-D
upper management material
 
Froofy-D's Avatar
 
Join Date: Nov 2002
Location: Orlando, FL
Posts: 1,999
+8 Internets
For game states I use state machines I guess (switch statements). I'm trying to keep everything as simple as possible, with as few files as possible. My game so far is basically 3 major parts:

Main.cs - does rendering, collision detection, and state management. Has separate Array_Lists<> for each major object type: ship, projectile, particle system, star system, asteroid, planet, etc. The actual code for rendering, updating, colliding, and drawing objects is in other files. So Main() is just a big state manager that farms out calls.

Class Files: each major class has it's own Update() and Draw() function. Examples: Camera.cs, Player.cs, Ship.cs, Starfield.cs, Particle.cs, ParticleSystem.cs, etc.

Static Helper Function Files - static functions that don't really make sense associated with an object. Random number generation, collision math, file loading, model drawing, stuff like that.

One thing I'm not sure where to put is mouse and KB input, since my Main.cs is big already with rendering/collision. Right now its a big switch statement in Main.cs. I was thinking of just making it a static function like ProcessKB() and ProcessMouse() in a separate file.

Collision is another thing that is really hard to decouple from Main(), since many different types need to be done (e.g. ship-ship, projectile-projectile, projectile-ship, etc.) and depending on the outcomes different things need to happen.

I guess Collision, Rendering, and State Management are all interdependent, and hard to separate in an intuitive way.
Froofy-D is offline   Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are On
Pingbacks are On
Refbacks are On
uberguilds network



All times are GMT -7. The time now is 05:12 PM.


Powered by vBulletin® Version 3.6.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0 RC6