Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411512 Posts in 69376 Topics- by 58430 Members - Latest Member: Jesse Webb

April 26, 2024, 03:50:18 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsUnnamed MMO/RTS/Turn-Based Hybrid
Pages: [1]
Print
Author Topic: Unnamed MMO/RTS/Turn-Based Hybrid  (Read 1717 times)
gammagec
Level 0
**


View Profile
« on: March 17, 2011, 12:34:55 PM »

BIO:
Ok, so I've been making indie games since 1995 (highschool) but I haven't finished anything ever.  I started out with QBASIC and progressed to visual basic, C++, learned graphics programming in College (manually and in openGL), then I started research in High Performance Computing and Medical Imaging which took me away from graphics & games for a while.  Now I work in the Silicon Valley at a Biomedical company doing "GoogleMaps-like" image viewing applications in Java, GWT and Objective C (Cocoa).

My game inspirations from then until now have been:  Dungeons & Dragons (Tabletop), Quest for Glory Series, Dragonlance RPG games (Death Knights of Krynn?), Sim City, The Sims, Final Fantasy Games, Civilization Series, MUDS (Smaug), Spore, Mass Effect, Baldur's gate, Neverwinter Nights

and more Recently
World of Warcraft, EVE online, Minecraft and Dwarf Fortress

I really enjoy the sandbox style games like Minecraft and Dwarf Fortress, but I'd really like to see something more MMO style.
(and more graphical).  I love the procedural world generation in Minecraft as well.  

I started on the Game Framework in Java's OpenGL wrapper (JOGL).  I'm developing in Eclipse Helios using a Maven project structure.

GOALS
Here are my current list of goals for the game:

1. A 3D world map like Minecraft / Dwarf fortress.

2. A multi-player MMO server that sends / receives the "diff" of map data between ticks.

3. Map data is stored in Octets.  Objects in game can be destroyed and their Octets get subdivided

4. Psuedorandom World Generation

5. Player controls main character from two perspectives, first person and overview RTS, similar to Dungeons (Dungeon Keeper)

6. Player gives orders to NPCs/henchmen indirectly , like Dwarf fortress... you just order that a certain area be dug and someone will
eventually get around to it. If they don't do it and u have the skill u can always do it yourself (minecraft style)

7. During an Action Event (such as a fight) a section of the map goes into a "turn based" mode. This mode would have a combat
style similar to Final Fantasy Tactics.

8. Any player who enters a section of the map which is in turn based mode also starts taking turns until they leave that section. or until the event is finished.

9. Permadeath! (possibly your NPCs or henchmen would be reattainable and therfore buildings and equipment could be regained, but
then other players could bribe or gain leadership of your lost assets as well)

10. A skill/technology learning/teaching system.  Where you can discover skills/technology or be taught them by other players / NPCs who already know them.  For example if you die and then reclaim leadership of your old assets (NPCs) then you can have them reteach you what you knew before (like mining), some players in the game can strike deals for knowledge

11. Leadership roles - a player can adopt another player as their leader. When that player is offline his leader can control him the same
way that NPCs are controlled. Every NPC has a loyalty factor and strong leaders can convince or bribe weaker NPCs to abandon Leaders and join them.

progress so far:

For starters, The day before yesterday it took me the whole afternoon to get the stupid maven project working with the native dlls from JOGL.  I wanted to do it so that everything for the project was set up entirely from the maven pom.xml, but I still had to manually set the native libraries build path in eclipse.

[3/17/2011]
Yesterday, I got the JOGL Canvas up and running and did some rotating Cubes.  I got one 2D cube in the front, representing the 2D graphics layer which will be used for the UI HUD etc, and the 3D cube in the back.  I then added textures to both cubes and set up some primitive lighting.

Tonight I plan on creating an Octet-based map-data Class and display Cubes in the Rendering panel.  Time permitting I will create a Camera class and let the camera move by the arrow keys.

[Later that night]
Ok, not sure if i'll get to the Camera and Map tonight, depends on how needy my wife is.  I did however just finish writing the SocketServer & SocketClient code that sends CommRequests and receives CommResults (serialized java objects).  I made a RequestMap & MapRequestResult class.  Need to research how to serialize my map properly.
« Last Edit: March 17, 2011, 07:51:20 PM by gammagec » Logged
eclectocrat
Level 5
*****


Most of your personality is unconscious.


View Profile
« Reply #1 on: March 17, 2011, 05:51:06 PM »

GOALS
Here are my current list of goals for the game:

1. A 3D world map like Minecraft / Dwarf fortress.

2. A multi-player MMO server that sends / receives the "diff" of map data between ticks.

3. Map data is stored in Octets.  Objects in game can be destroyed and their Octets get subdivided

4. Psuedorandom World Generation

5. Player controls main character from two perspectives, first person and overview RTS, similar to Dungeons (Dungeon Keeper)

6. Player gives orders to NPCs/henchmen indirectly , like Dwarf fortress... you just order that a certain area be dug and someone will
eventually get around to it. If they don't do it and u have the skill u can always do it yourself (minecraft style)

7. During an Action Event (such as a fight) a section of the map goes into a "turn based" mode. This mode would have a combat
style similar to Final Fantasy Tactics.

8. Any player who enters a section of the map which is in turn based mode also starts taking turns until they leave that section. or until the event is finished.

9. Permadeath! (possibly your NPCs or henchmen would be reattainable and therfore buildings and equipment could be regained, but
then other players could bribe or gain leadership of your lost assets as well)

10. A skill/technology learning/teaching system.  Where you can discover skills/technology or be taught them by other players / NPCs who already know them.  For example if you die and then reclaim leadership of your old assets (NPCs) then you can have them reteach you what you knew before (like mining), some players in the game can strike deals for knowledge

11. Leadership roles - a player can adopt another player as their leader. When that player is offline his leader can control him the same
way that NPCs are controlled. Every NPC has a loyalty factor and strong leaders can convince or bribe weaker NPCs to abandon Leaders and join them.

Yeah, but will it make me a sandwich? Otherwise why bother?

Seriously. Very ambitious. I hope you're a hardworking genius and we'll get to play it someday.
Logged

I make Mysterious Castle, a Tactics-Roguelike
gammagec
Level 0
**


View Profile
« Reply #2 on: March 17, 2011, 06:06:08 PM »

Sandwich No.  Genius... probably not.  Hardworking? definitely not, but I've always felt that the best programmers are the lazy ones. 
Logged
Geeze
Level 5
*****


Totally.


View Profile
« Reply #3 on: March 17, 2011, 10:23:41 PM »

A very cool project! Hand Money Left Well, hello there! Hand Money Right
But what kind of graphics have you in mind?
Logged

gammagec
Level 0
**


View Profile
« Reply #4 on: March 17, 2011, 11:03:29 PM »

I will post some samples once I get further along.  I still need to do some experimentation with the Octet style rendering.  The idea is similar to minecraft style blocks, except the blocks can be bigger and smaller depending on how broken down the Octet is.  The goal is to have a fully destructable world. For example A forge building might just be a textured cube, but if it get's damaged somehow, it could be broken down into smaller cubes and some cubes could be taken out, right down to a pile of rubble. I still have a lot of experimentation to do.
Logged
gammagec
Level 0
**


View Profile
« Reply #5 on: March 18, 2011, 09:25:37 PM »

[UPDATE]

So I started working on the Octet map data structure.
I created a serializable Octet tree class. I wrote the client side code to display the FPS and the Updates per second (from server).  With one filled root octet the rendering was fine. I then wrote a PaintVoxel(double x, double y, double z) function for the octet that automatically subdivides the octet until it is a 1x1x1 voxel. This was fine also for just one voxel, however once I subdivided the Octet and made a 512x512 plane at the bottom, it killed the rendering.  Apparently rendering 262144 cubes on an OpenGL canvas isn't fast.  I guess I should've expected that. But fret not, I've been wanting to write my own Voxel-based renderer anyways.  I've looked at some of the recent Octet-Voxel based renderers that are out right now like Voxeltron and that Wolfenstein and they look good.
Logged
gammagec
Level 0
**


View Profile
« Reply #6 on: March 19, 2011, 12:00:26 PM »

OK, after playing Voxelstein a bit, I'm thinking Volumetric display isn't going to do exactly what I want for this game.  I'm going to try the JOGL code again but this time using Display Lists.
Logged
gammagec
Level 0
**


View Profile
« Reply #7 on: March 19, 2011, 04:47:48 PM »

Oh man, i really need to start using SVN up in here. In a fit of low FPS rage (and a few glasses of wine), I removed all of the JOGL / OpenGL code and had my mind set on Voxel rendering.... Now I need do that part over again. Oh well, always room for improvement right? I had some sweet recursive code for rendering Octets tho Sad
Logged
gammagec
Level 0
**


View Profile
« Reply #8 on: March 19, 2011, 04:54:21 PM »

Oh thank god! I love you Eclipse! I did "compare with local history" and sittin right there was Renderer.java and the option to restore from the grave!
Logged
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic