Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Newcomers DBPro Corner / The Making of DarkMORG: A Multiplayer Online Role-playing Game

Author
Message
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 16th Oct 2007 14:01 Edited at: 4th Sep 2008 17:00
Thread Discontinued. Please Visit The Official DarkMORG - MMORPG FPS Server/Client WIP Thread for the latest updates.




A Persistent Online Multiplayer 3D RPG FPS Game System


Introduction

This is my official Interactive Worklog on the Making of DarkMORG: A Multiplayer Online Role-Playing Game Server & Client. What is DarkMORG? Let me start off by telling you what it is not. DarkMORG is not a Massive Multiplayer Server per se in the traditional sense. Its Game Server manages upto 32 Persistent Quest Instances with upto 8 players inside each Quest Instance.

DarkMORG Server/Client Architecture v061908

[/center]

I'm coming to the table with a background in PnP game and Text-based MUDs. My favorite computer 3D games are First Person Shooters and RPGs. My goal is to merge PnP/MUD RPG Concepts with a FPS Combat Engine. I'm designing the Game Server with emphasis on Smaller Group Mutliplayer Support and User Created Content.

What I'm attempting to do here is share my ideas, code, and art as I develop this game. I don't expect others to necessarily agree , however, this is MY way of doing it. Hopefully, others will find something useful in my effort. This Worklog will serve as the Design Document. This initial post will be the primary update section, and I will respond to feedback with new post. So lets begin shall we.

I have sliced up development of the game into several Footstones based on the features. Below is a list of the current Footstones:

[Core]
* Database Management for Resources & Data
* Network Messaging Format: Twitch, Command, and Chat
* LUA Script Engine & Interpreter
* Modular Entity Construction Sets: Characters,GunVertor,Melee Weapons,Props,Machines,Vehicles,Buildings,Structures
* Modular Entity Construction Assemblers (In-game Editor)
* Moderated Open Asset Reposity via HTTP/FTP

[RP Systems & Quest Construction]
* Logic Give/Take Registry (GTR)
* Logic Triggers
* Dark AI

[Battle System]
* First Person Shooter Combat
* Advance AI Behaviors with Dark AI
* Player Controlled (N)PCs
* Infectious Outbreak Monster Spawning System
* Scripted Character Effect

[Crafting System]
* RTS Input/Output System
* User-Created Art Assets

[Rendering]
* Dark Physics
* Shaders
* Octree Culling
* Level Of Detail

I'm designing the engine with very little insight on MMORPG Design. However, I'm using A Beginner's Guide to Creating a MMORPG written by Radu Privantu as a guide in the design.
[center]

Visit The Official DarkMORG - MMORPG FPS Server/Client WIP Thread
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 16th Oct 2007 14:39 Edited at: 1st Nov 2007 21:44
Engine Design: DarkCore DB Programming System

The second most important part of this project is to fully develop a Standardized DarkBASIC Programming System I've dubbed DarkCore. DarkCore is basically set of rules that I will be using to write and maintain organization of code in a very specific way. So if you read the code, you should notice common similarities throughout the source code. My goal is to one day create a System that other Programmers who choose to use it, can write and read each others source code effortlessly. One day I will test this theory.

Visit the Official Thread.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 17th Oct 2007 11:58 Edited at: 22nd Oct 2007 19:55
Engine Design: DarkMORG Net Chat

I have coded the basic Network Chat Code. The code is currently based on Paul "Fluffy" Morgan's Chat. Yes! Im using DirectPlay Commands. After some debugging and crosscountry network testing (Testers Wanted), I will be ready to move on to the next Footstone: 3D Primitive Construction via Chat Commands.

With 3D Primitive Construction via Chat Commands, Players can send DarkBasic-like Commands (ie: make object cube 1 ) to all Clients via Chat to Create, Edit, Delete 3D primitives. I've been pondering over two ways to handle this, 1) preprocess the command locally sending a special Network Message or 2) Send command string in its entirety interpreting on the client.

Either scenario may require a Command Line Interface (CLI) Parser to interpret the commands. I started on Scripting Engine earlier in the week that I may use for this purpose. This will give me both CLI and Scripting Engine.

Heres some screenshots of the DarkMORG_Net running. I know that it doesnt look much but, what it does more important. Currently the DarkMORG Chat is only set up for 16 players, but, I will expanding this greatly.





In these screenshots, the cube's color is changed by sending the command string "City of Lights" or "Forces of Darkness". Note: The Actual Game Control commands will be similar to DB. This was only to test the idea.

This simple functionality is the premise for Multi-User Level Building, Quest Editing, and In-Game Play "City Building". My goal is to move the manual typing of commands into to the GUI. I'm seriously eyeballing my scripting engine.

Could use some assistance in testing the network code. Absolutely any help would be greatly appreciated.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 17th Oct 2007 20:30 Edited at: 21st Oct 2007 15:45
Game Design: Inspirations

DarkMORG is a game about good vs evil. The concept of the game is inspired by stories from Stephen King coupled with my passion for Zombie Flicks. Recent Zombie Flicks like Dawn of the Dead (2004), 28 Weeks Later, and Resident Evil Extinction are playing a heavy inspirational role too. The primary question I ask myself is, what would happen if the Dead started to return?

Zombimorphic Monsters will come in all shapes and sizes. When I say the dead rise, I mean anything that was dead both human and not. My idea is to assemble bizaare and mythological-like monsters from dead 'body-parts'. This is more so an artistic style to go with theme of the game. Thus, a Dragon-like monster in DarkMORG may look a lil different than the typical Dragon, but the functionality of the monster will be similar.

What is a RPG without Elemental Influences. I intend to make use of 8 Elemental Attack/Guard Modifiers: Fire|Ice, Water|Lightning, Metal|Wind, Light|Dark. Each Undead Monster will reflect their strongest elemental in the context of their name and appearance. For example a 'Flaming Zombie' will absorb fire attacks, and have a significant weakness against Ice attacks. Another example, 'Dead Pirates' are usually associated with Water thus, Water would be used as their strongest Elemental Modifer.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 18th Oct 2007 09:13 Edited at: 10th Dec 2007 09:15
Game Design: Non-Graphical MUDs

Several NON-Graphical MUDs are the inspiration behind the gameplay for DarkMORG. Interestingly I have found some non-graphical MUDs to be extremly immersive, even more so than grahpically-driven MMORPGs. If you have never played one you should go visit http://www.ironrealms.com when convenient.

I want to combine this type of immersiveness with a Fast paced FPS combat system. IMHO FPS combat can be the most immersive than any other. By combining these two styles gameplay, I intend to achieve to level of suspense unlike any other RPG out there.

http://www.mudmagic.com/articles/Big/179.html

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 19th Oct 2007 10:58 Edited at: 23rd Oct 2007 16:03
Game Design: Zombification

Zombies don't die, they multiply!

Guess what happens to your character when they die? They are zombified which results in -XP value or UndeadXP (based on your previous XP). You must play as a Zombie until you reached UndeadXP value of 0 to return to the living. Once you return to living, your Character is reinstated full charge.

The location of your Zombie is controlled by the Quest Server and can result in being sub-surface teleported from one location to another depending on the needs of the Server.

One Benefit to Zombie mode, is that you can also possess other Undead Monsters to earn undead XP based on the Level of your previous living character. When possessing such monsters you assume full control of that monster's attacks and abilities.

You have the option to abandon the Zombie. If you decide to abandon the Zombie must start a new character from the beginning. At the moment, Zombification is the only form of PVP in the game.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 21st Oct 2007 06:35 Edited at: 10th Dec 2007 17:06
Engine Design: GIVE/TAKE Inventory System

Today I worked on the Inventory System (although this is listed as Footstone #9). I'm implementing the Inventory System at the core of the Game Logic. The idea behind this is that all Interactive Game Objects and Events will posses a TAKE Inventory List. This is a list of variables and values that the player must possess in their GIVE Inventory List. Everything For the player is stored in a Single Inventory list To Include: Permissions, Attributes, Skills, Weapons, Items, etc.

Every Interactive Game Object (Triggers / Player Controls / Gui Buttons) has a TAKE Inventory List of required items to activate. Items in both Lists are stored as text labels. The GIVE List Item contains name & value. The TAKE List Item contains name & value, and a logic condition {>, <, <>, < = , = >, = }.

How the Inventory System Works? When a player attempts to activate a Interactive Game Object, Items in the Player's GIVE list are compared to the Items in the Interactive Game Object's TAKE list. First the Items are checked to see If they exist, than they are compared using the TAKE Item's Logic condition. Each check results in a 1 Or 0. If all Items checks = 1, the action is executed. If any Item check results in 0, the action is aborted.

A Interactive Game Objects and Monsters also have a additional DROP Inventory. Which Drops an items in this Inventory when activated. The Inventory System will support the logic for Quest creation. Just think of a Quest as a TAKE Inventory List of 'Task Completion' Items. When a layer completes a Task, a Task 'Completion' Item is added to their Quest GIVE List.

I will be storing Inventory Information in a online database (Footstone #4 Database Management for Resources & Data). This information will also be used by online applications such as Website and Forums to integrate both in-game and online content and features.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 21st Oct 2007 08:31 Edited at: 22nd Oct 2007 19:54
Game Design: Art Direction

As I mentioned in the Introduction I'm developing this game with focus on network functionality and gameplay, NOT graphic features. However, I do have a mental picture of the art I would like to see in this game.

What I envision for the Art Direction in DarkMORG is robust 3D Urban Landscapes similar to that of Grand Theft Auto III (and greater) combined with Urban Interiors of Xatrix Entertainment's KingPin.









I desire players to be able to build or modify existing structures in the game making use and reuse of Building and object Models and Textures.

The only pictures in my mind of Zombies are the ones in Sega's House of the Dead III w/bump mapping, normal mapping, and specular highlighting. I would love for Players to be able to target and hit specific body parts and watch them explode, freeze, burn, etc. However I will settle for a standard dying animation sequence. hehe.





TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 21st Oct 2007 10:22 Edited at: 10th Dec 2007 10:34
Game Design: When Zombies Attack!

Unlike many RPGs, all areas in the game are subject to Zombie Attacks at any time. There are a limited number of 'Secured' Safehavens, each with limitation on occupancy. At each Safehaven there is a map to all other Safehavens. There is a special skill that obtained in order know what Safehavens are at full capcity. It will be an adventure in itself to get to a Safehaven and survive in the process.

Safehavens can also be manufactured from scrap material. You can find and buy scrap material.

Your character will require Food/Beverage in order to sustain and restore Health. Food/Beverage can only be obtained in Markets, Restraunts, and Cafes that are miraculously stocked. You can gather and share you food with other humans you select to share it with.

Telephone Booths serve as a Save Points and teleportals in and out of the game. They are graceously spread over the city.

Libraries are places where players can find books and information. Books are self-teaching guides in which players can learn new skills.

Specific types of Zombimorphic Monsters inhabit certain areas of City based on their strongeset elemental modifier. Zombimorphic Monster Bosses reside in lairs and rarely leave far the lair.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 22nd Oct 2007 18:28 Edited at: 24th Oct 2007 05:00
Engine Design: DarkMachine

After serious consideration to avoid writing one, I've decided to write a A DBP BASIC Syntax Scripting Engine for DarkMORG. I have lovenly dubbed this engine DarkMachine (because obviously I like names with the word Dark in front). DarkMachine will feature a P-Code Compiler & Virtual Machine, and Command Line Interface (CLI) Interpreter.

Below is working Concept Code that I'm building upon to develope DarkMachine. Others may find it useful to write their own Scripting Engine, Compiler, Virtual Machine, Interpreter, or Parser. Now I know that you think I'm crazy, but, I will be secretly porting over some work from a previous Scripting Engine developed in BlitzBasic.



Check out the DarkMachine: A DarkBASIC Syntax Scripting Engine Thread for more details.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 23rd Oct 2007 16:00 Edited at: 19th Dec 2007 12:51
Game Design: The Human Being

When I was thinking of ways to implement RPG features in my MMORPG Engine, I referenced Steve Jackson's Generic Universal Role Playing System (GURPS) Rulebook. In GURPS there are only for 4 primary attributes Strength, Dexterity, Intelligence, and Health. However, what really caught my attention in this manual was sheer number of rules for various Skills/Abilities, Perks & Quirks. The manual contains 100’s of rules that account for unique physical, mental, psychological and emotional qualities that make us human.

I have GM’d one or two Pen& Papers in my time. As a GM you ultimately craft your story based on the Player’s Characters. IMHO, the amount of freedom in these games unattainable in their PC counterpart, however, I want to get as close as I can in my MMORPG. As a GM, one essentially performs numerous conditional checks against the Character’s inventory of Attributes, Skills, Perks & Quirks, Spells, etc to formulate an Action or Event (series of actions). This is what I desired to bring to my MMORPG, the question was how.

I realized that the player character’s sheet was nothing more then a single large inventory list merely divided into sections for better readability. So this was my first the objective of my RPG engine design: Store everything {Attributes, Skills, Spells, Accessories, Armors, etc}, for every interactive object in its own single inventory list for rapid conditional checking. Note: This has nothing to do with how the inventory is displayed on screen, only how it’s managed by the engine.

My second realization was that interactive objects could perform conditional checks against each others inventory, executing scripted actions and events based on the result of a TRUE or FALSE. (Note: I use the term interactive very loosely here. Any object that collides or affects another’s properties is interactive.) In using this Logic, interactivity between objects could be based on dozens of factors instead of few measly stats and dice rolls, providing greater realism and detail. The Second objective: Check Inventory lists between objects that interact.

Other Objectives:
1. Adding, removing, sorting Inventory List with ease.
2. Rapid Conditional checking.
3. Optimized Storage/Memory Space for Inventory list.
4. SQL Database Implementation.

These objectives are poured into the code behind the GIVE/TAKE Inventory System. I expect player characters and other interactive objects to have very large lists containing dozens or even hundreds of inventory items. Because this inventory system is at the core of all logic in my MMORPG, it’s driving both Engine and Game Design. This leads me into the next series of paragraphs.

Every Stat, Attribute, Equipment, Skill, Spell in the game is registered into the MySQL RPG Database Inventory Catalog Table by Text Label. These Text Labels serve as valid keys that are usable in GIVE/TAKE Inventory List.

The Game Server performs GIVE/TAKE Inventory Check against the Players Input. The servers TAKE Inventory contains Permission items, but, could also include other items such as attributes, skills, equipment, etc that can be used to authenticate the player’s input. Additionally, all RPG data is stored in a MYSQL Database for persistence and available to both Game Server and Web Applications. So the GIVE/TAKE Inventory is also available to Web Apps such as a Forum, Auctions, Polls, Articles, etc for authentication.

Like Web Applications, the Client-side GUI is loaded from Game Server using a special Markup Language. Thus the Client will only be able to view controls allowed by their Characters GIVE Inventory.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 28th Oct 2007 08:49 Edited at: 28th Oct 2007 10:57
Game Design: What makes MMORPG's so addicting? by JSteel1210

Millions of people play MMORPG's daily, but have you ever wondered what makes them so addicting? As a gamer which openly admits that I am addicted to RPG's and MMORPG's, here is why I think they are addicting.

I will start out by listing the reasons why RPG's are addicting. RPG's have all of the same standard elements to them that make a person play them for hours on end. I may sound old, but I remember staying up for hours playing dragon warrior and final fantasy for my Nintendo. I was under 10 years old and I couldn't put it down. Ever since, I've been hooked.

Here are some of the qualities that make RPG's so addicting.

Character Building
Sense of accomplishment
Proxy of one’s self
Sense of competition
Storytelling
Following a storyline
Telling your own story
Social Interaction
Easier to communicate
Portraying your ‘character’ online
Commitment
Loyalty
Respect
Acceptance
We'll start it off with character building.

When you build up your character or army, it gives you a few things. It gives you a sense of accomplishment. It's like a little kid after they build their own birdhouse. You look at your character and look what they have blossomed into. You remember back when you first started playing, knowing you had so little, and you then look at what you have now and sometimes it's amazing. You then feel the nice warmth of accomplishment and it makes you think you've done something productive.

Another category that would fall under the sense of character building would be one portraying one's self into the game. When people make their characters, sometime they name them after themselves or their nickname. I know on many occasions I have named the main character 'SaumZ'. It makes you feel like you are the one in the game, doing all of the incredible things like casting magic, operating a mech, or slaying a dragon.

There are people out there that take this to a whole new level. They get together and portray their characters in real life and they act out battle simulations. It's called Larpa, Live Action Role Playing Association. Here's the wikipedia article about them: http://en.wikipedia.org/wiki/LARPA

Now, when we talk about character building in the sense of MMORPG's, there we add the sense of competition. For instance, when the first person in World of Warcraft reached level 60, they received huge recognition. There is always a hierarchy in MMORPG's on how touch you are, how buff you are, and what items you have. It's a primal instinct that comes out that strives people to get bigger and get better things. This is one of the most powerful forces when it comes to MMORPG addiction.

Now, the second part of RPG's and MMORPG's is the aspect of storytelling. Seriously, would you like to play a RPG, let alone a MMORPG, that has a bad story? One of my favorite things about playing a traditional RPG is being able to get the story told to me. It's like reading a good book. I am sure some people have memorable stories in their head still from playing some good RPG's. One of the most memorable stories in all RPG history is the story in Final Fantasy VII, especially they part of the game where Aeris is killed by Sephiroth. I remember reading about people actually tearing up and crying over this part of the story, and I will admit it was quite moving.

One of the more popular games out there right now, Elder Scrolls 4: Oblivion, has a rather unique system when it comes to storytelling. You can either follow the story line in the game, or else you can make your own story. The game has a open RPG feel to it where you can basically do anything you want and venture into anyplace in the world. MMORPG's have had this for some time now, but Oblivion has it in a single player game. I am sure everyone that has played a MMORPG or an open RPG has their own unique story to tell, and each one of them would make a decent book for anyone to read.

Now we will dive into a few unique things that MMORPG's have that are unique to them. If you thought that RPG's were addicting, they have nothing compared to MMORPG's, and here are a few reasons why.

The first thing that MMORPG's have is the social interaction. You can chat with people, belittle them, help them, etc. Many people make friends online, and sometimes that even turns into friends in real life. Along with the emergence with MMORPG's is the ways that people communicate online. Many people that are in online guilds or groups use voice communication to help them out in difficult situations. Voice communication also helps strengthen the social interaction bond that is formed in game.

Along with social interaction, we will step back and reiterate the notion of portraying yourself as a character. It helps make yourself into a fantasy character and make yourself seem like you have superhuman qualities. When people talk in game, they usually say something like "Can you cast this spell?" not "Can your character cast this spell?" There is a depth of personification that happens in MMORPG's that is a lot more powerful than just a plain RPG.

Another aspect of MMORPG's that get people to get addicted to them and keep playing them is the aspect of commitment. After a while after players establish a group of friends and people they adventure with. They start to feel some commitment towards playing the game with them. If they don't, the sometimes feel like that they are left out or they are letting their online friends down.

In MMORPG's people also get a sense of respect that they sometimes wouldn't normally get in real life. Lots of people get a huge thrill out of having people "ooh" and "awe" over what they have accomplished in the game and what they have done.

On top of it all, there is one thing item about MMORPG's that help fill a hole in some people that everyone strives for, and that is acceptance. For some people, they have been striving all of their life to be accepted into a certain genre of people, or even by their community. This has given a light of hope in a way to a lot of people that are socially challenged.

I'm not saying by any means that everyone who plays MMORPG's do it for these reasons. I know that there are many recreational gamers out there that play these, but there are more and more people becoming addicted to these type of games.

Found the article from here:
http://wtfiswrong.com/index.php?option=com_content&task=view&id=59&Itemid=2

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Zombie 20
17
Years of Service
User Offline
Joined: 26th Nov 2006
Location: Etters, PA
Posted: 28th Oct 2007 13:54
um.....wow!!!! Keep it up mate, I'm a big fan of zombies and I read you enjoy stephen king. Have you read Cell yet? I'm in the middle of it right now, very good zombie novel mate ;p.

Dr. Mannete- OMG It's Zombie's voice, it's so Suave!

n008
17
Years of Service
User Offline
Joined: 18th Apr 2007
Location: Chernarus
Posted: 29th Oct 2007 01:01
Wow, that's a lot of words! :-0

Looks cool, can't wait to see your progress.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 29th Oct 2007 11:17
Engine Design: Applied Filming Techniques.

Prior to my return back to Game Programming, I was researching Movie Production and Special Effects as a hobby. My goal is to employ some of the filming techniques I discovered in DarkMORG to compensate for my lack of a Artistic skill. I'm not talking Machinima either.

Quote: "
Film has an aesthetic quality about it that can be described as surreal, organic, or fantastical. Video, on the other hand, may be described as harsh, sharp, and realistic-looking. One of the reasons behind this quality difference lies in the way in which film and video are recorded.

Film is recorded at 24 images per second (24fps). Motion blur is the blurred effect you get when exposing an image with movement. With a typical 180 degree shutter, the exposed image movement, and subsequent motion blur, is therefore recorded for 1/48th of a second.

NTSC video records 30 images per second, however, each image is divided into two separate fields that interlace to form a complete image. This results in 30 odd-field images and 30 even-field images recorded each second. Consequently, 60 separate half-resolution images are recorded every second.

Movement and its associated motion blur are therefore captured at a much quicker 1/60th of a second with a negligible "off time" in between field exposures. The outcome is significantly less motion blur and a sharper image as the images are captured more frequently and for a shorter duration. This is more characteristic of human vision than film and one reason why video looks so real in comparison. - Dan Coplan"


I speculate that I can achieve a Film look rendering the game at 24 FPS and using Motion Blur and Depth-Of-Field effects to match that of Film. I don't know anything about shaders, but, I hope Shaders can be used to achieve these effects. If I can pull this off, this will give me an additional 6 FPS I can play with for performance.

Cinematic 3rd Person Camera. Although DarkMORG's Combat System will be First Person, I will be including a 'Cinematic' 3rd Person camera (CinCam) system that can be invoked by the player when not in combat or by Server during moments of intense suspense. The CinCam will based on popular Film Camera Shot Techniques: Dolly, Crane, Stedicam (behind the player), and ZombieCam.

Camera view selections will be tied into Inventory System.

jason p sage
17
Years of Service
User Offline
Joined: 10th Jun 2007
Location: Ellington, CT USA
Posted: 30th Oct 2007 02:32
Nice theories - and some proofs bro! Way cool. You're last entry - the shaders thing - I was at Nvidea's site and I found a spot that had many free shaders to download - and they had everythign from ocean to blurry eyes, shadowing effects - (to make a person's face seem candle lit etc) - I don't have the link handy - but I think you'll find shaders are a nice tool set to add to your "Production" tool box

Mr Kohlenstoff
18
Years of Service
User Offline
Joined: 7th Jun 2006
Location: Germany
Posted: 31st Oct 2007 20:25 Edited at: 31st Oct 2007 23:05
Yoooo, I am usually to lazy to read such long texts, but the whole thing looks really interesting! I'll read it this evening, I hope I can learn something.
However, you seem to work out each single detail in the beginning, and that's cool. I could never be motivated enough to make such a big concept.
Probably good work.

Edit: Wohoo, I've read it all.. quite interesting, and this Dark Core Project is a very funny idea. Good luck and keep posting.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 4th Nov 2007 13:42 Edited at: 5th Nov 2007 10:04
Engine Design: Benjamin's Amazing Winsock Code.
Although I'm not a fan of using DLLs, Benjamin's WinsockLib looks beautiful and utilizes the winsock dll that comes with the Windows standard distrubition. Http here I come.



WinsockLib.dba


Server.dba


Client.dba


Quote: "Note that Accept/Connect/Send/Recv 'block' (sleep) until the operation completes, so this way you have to do operations in a certain sequence. When I have some more time I'll explain how to use non-blocking sockets.

It's also important to remember that my RecvString function will return a blank string when the connection is closed or when there is an error, which will need an alternative solution as you can't differentiate between a blank string and the aforementioned events this way."


PresFox
19
Years of Service
User Offline
Joined: 28th Aug 2005
Location:
Posted: 4th Nov 2007 19:36
at least give credit where credit is due

that code is benjamins isnt?

Microsoft isnt evil, they just make really crappy operating systems -- Linus torvalds
Benjamin
22
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 4th Nov 2007 21:02
My beautiful code!

Tempest (DBP/DBCe)
Multisync V1 (DBP/DBCe)
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 5th Nov 2007 00:09
Oops my bad, Sorry Benjamin, I posted the source more like a note to self in a rush. Credit is given.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 5th Nov 2007 15:08 Edited at: 27th Sep 2008 14:55
Cash Curtis II
19
Years of Service
User Offline
Joined: 8th Apr 2005
Location: Corpus Christi Texas
Posted: 6th Nov 2007 10:55 Edited at: 6th Nov 2007 10:56
You're getting ahead of yourself here. Potential profit streams are pointless without a product. Do what the Gowers brothers did with Runescape - get a simple, playable online-RPG up and running. Box connection tests amount to nothing. They are not indicative of the true resource requirements of the final engine nor are they indicative of the media management that your engine will be responsible for across the Internet in real time.

In order to have a forum hit you'll need a game that supports : 1. Multiple animated characters, 2. Inventory, and 3. Combat. Magic would be nice too, but a good combat system would entertain and demonstrate the capabilities of your engine.

If you are serious about this then you need to purchase DBP and all of the expansion and media packs you can get your hands on. Every little bit helps.


Come see the WIP!
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 6th Nov 2007 15:31 Edited at: 6th Nov 2007 19:57
Quote: "You're getting ahead of yourself here. Potential profit streams are pointless without a product."
Agreed.

Quote: "In order to have a forum hit you'll need a game that supports : 1. Multiple animated characters, 2. Inventory, and 3. Combat. Magic would be nice too, but a good combat system would entertain and demonstrate the capabilities of your engine."
Agreed.

Quote: "If you are serious about this then you need to purchase DBP and all of the expansion and media packs you can get your hands on. Every little bit helps."
Agreed.

Cash Curtis II, I agree with all of your points, but, the point of this thread is to serve as my Game/Engine/Marketing Design Document. So you will probably see a lot more crazy ideas before it closes. hehe. IMHO, writting the idea down is the first step to finishing up.

I'm currently grueling away on the Script Engine. I've already written the Network and Inventory System which are core to the design of the Engine. When I'm ready to stack FootStones like Character Animation, AI, Physics, Shaders, etc, I will purchase DBP expansion packs, but, for now the trial version suits my needs.

jason p sage
17
Years of Service
User Offline
Joined: 10th Jun 2007
Location: Ellington, CT USA
Posted: 6th Nov 2007 15:49
guys - Cash Curtis AND Techlord - I don't USUALLY like RPG genre - but my Wife downloaded this game that caught my eye because of the GFX. Then I tried it - I'm FREAKING HOOKED!

Therefore - as only a suggestion - to see a good example of Animations, Shaders, 3d down (slight angle) cam view (Reminiscent of Geisha House), Nice Audio, nice "Tips" setup, Voice Overs, and also very impressive in the "Inventory/Spells/Quests" etc interface - Please don't be annoyed I suggest this - Its from an Indie like us - and I was taken aback enough to reconsider WHAT I'm trying to accomplish in Iron Infantry Even - The competition is fierce.

I'm going to really dig in like Cash Suggested elsewhere - and "make my own models" and Animations etc - just to have that completely "Mine" look - I may or maynot get there - but - Definately on my mind - anyway... The game is titled simply: FATE

My Wife used [href]www.wildgames.com[/href] to find it - and they have "Free Time Trials" or something.

Another neat thing about it is the dungeon "engine" is completely Random - when you start a new game - it builds it all randomly (it seems) but the look of it is not boring at all! (Surprised me for being that dynamic) My Wife looked at me playing - say I was on level 1 dungeon and she said it was 100% different then "Her" level 1. So - that impressed me to no end.

Check out the lighting and stuff. I really think this game nails many many "things" dead on to what many online here in the forums are trying to achieve - including myself.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 16th Nov 2007 21:51 Edited at: 16th Nov 2007 21:53
Quote: "Another neat thing about it is the dungeon "engine" is completely Random - when you start a new game - it builds it all randomly (it seems) but the look of it is not boring at all!"
I will take a look at this in the future, but, I do prefer specific levels so players have a sense of orientation in the game world. Additionally, the concept behind the level building is user driven, thus, multiple users can collaborate constructing the city from a library of buildings, bridges, etc.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 21st Nov 2007 11:20
Engine Design: Self-Contained Character Pack

Tonight, I was pondering over the idea of a Self-Contained Character Pack (single zip file) that would include all the media (textures, meshes, animation, sound), data (attributes, inventory), and logic scripts (Independent AI Controller) needed to insert a new monster in the game.

The premise behind this concept is to enable DarkMORG enthusiast to easily create and add New monsters to the game with entirely new behaviors, attacks/defenses, special effects, and soundeffects to the game with minimum intrusion to the core.

AI Controller is the heart of the Character. It communicates with Game World to control how the Character appears, animates, moves, etc. The AInteractive is Inventory Driven essentially performing a series of conditional checks to execute animations, soundfx, and actions depending on input from the Game World.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 4th Dec 2007 20:30 Edited at: 4th Dec 2007 21:00
Engine and Art Design: 3D Sprites VS 3D Geometry.

This 2D 3D Pop-up Imagery has sparked a lot of ideas for art design geared for myself (the Artist challenged). I can visualize using Live Action 3D sprites and billboards for both Architecture and Characters.

Well imagine Live Action (pre-rendered) Animated Character Sprites like in the orginal Mortal Combat, but, in First Person-Facing the camera angles in a 3D level map built from 2D-3D Pop up environment Images.Check this out.

Concerns: Pixel Perfection, Special FX Maps, Shaders, Performance.

FERSIS
18
Years of Service
User Offline
Joined: 17th May 2006
Location:
Posted: 4th Dec 2007 20:56
Keep it up , it looks like a ton of work
Good for you man.
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 6th Dec 2007 07:57 Edited at: 6th Dec 2007 14:30
Game Design: The Plot (***WARNING: Contains Spoilers***)

As I mention in my the second post, "Game Design: Inspirations", I'm heavily inspired by stories from the great Horror Author, Stephen King. Some stories include The Stand, The Tommyknockers, Home Delivery, The Mist, and many, many others.

The game will evolve beyond just humans who struggle to survive in a world infected with zombies. As you play the game, the tale will transition from a Post Apocalypse theme into Fantasy Sci-Fi one. To achieve this, players will be gradually introduced to a Powerful Psionic Powers (Magic System), New Selectable Mutant Character Classes, New Mutant Monstrosities to Battle, Alien Technologies as their character levels up.

So what sort of plot would support such a game. How about one that involves a Alien race that uses the Sun Rays 'Dead Sun Weapon' to reanimate undead armies against humankind. Unknownst to the Aliens, is the side-effect of the 'Dead Sun' Rays on the living, which results in the development of mutant psychokinetic powers abbreviated with two alphabets, PK.

I dont see any reason for the game to be stuck any particular theme. My goal is to seemlessly add new content and features both online and offline, in-game and out-of-game, to the player as they Level Up.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 6th Dec 2007 08:19 Edited at: 18th Aug 2008 01:54
Engine Design: Modular and Procedural 3D Construction

For many years (1995-2095), I persued the creation of a FPS game that would feature my Modular First Person Shooter Weapon System, I've effectionately dubbed GunVertor. The premise behind GunVertor is a Modular FPS Weapon & HUD System that could be assembled into virtually a countless assortment of weapon designs or used for specific set of static weapon designs.

Weapons are assembled from interconnecting weapon components. Each component effects the player, weapon, and ammo in a specific manner.



Gunvertor Weapon System


GunVertor Weapon Components:



I have since come to realize that every weapon, building, character/monster, vehicle could be assembled from modular components. Such a design would promote the rapid construction of new unique interchangeable combinations to create new weapons, buildings, character/monsters, vehicles. The concept can also be applied to non 3D media such as modular multi layered 2D Textures for {Faces, Cloth, Armor Designs, tatoos, Ads, etc} and Music composed from smaller music segments.


Many games do this already. In RPGs its interchangeable characters components. In Racing Games, its vehicles components. I want to seriously abuse this modular-component design by applying it from the largest to the smallest of Game Objects. The idea is simple, it can broken into smaller parts it can be modularized. Think object, think subobject

So the question is how can this be done? I had created a successful prototype system for connecting components (models) with gunverter. The idea was to 'snap' the models together like blocks. Special Joints are added to the model at design time with the 3D modeling software and were glued together in realtime by the game engine. A simple naming convention was used to identify the Joints to insure compatible parts connect only.

The Game will feature a Builtin Editor which components can be viewed, interchanged, and properties adjusted. It is more so a Assembler, than a editor so that what I will refer to it from this point forward.

Although the DM will provide commands for 3D creation, its recommended that Models, Animation, and Images be created with more powerful, easier to use 3rd party pacakges.

Techlord's Master List of Modularizable-Component Classes of Objects:



Michael Jackson
17
Years of Service
User Offline
Joined: 31st Oct 2007
Location: Paris
Posted: 6th Dec 2007 14:38
thank you!


Virtual X
18
Years of Service
User Offline
Joined: 27th Feb 2006
Location:
Posted: 6th Dec 2007 16:20
dude, do you have anything else instead of a cube to look at?

stop waffling on about this and about that, I know your probably trying to stay motivated and trying to convince yourself you can do it by posting all this waffle, but seriously, get started on something worthwhile reading about instead of a cube
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 6th Dec 2007 23:34 Edited at: 6th Dec 2007 23:54
Quote: "dude, do you have anything else instead of a cube to look at?stop waffling on about this and about that, I know your probably trying to stay motivated and trying to convince yourself you can do it by posting all this waffle, but seriously, get started on something worthwhile reading about instead of a cube"
LOL. If you can help me with this issue (Posted: 5th Dec 2007 13:50) , I can show you a cool BASIC scripting engine writing in DBP.

Virtual X
18
Years of Service
User Offline
Joined: 27th Feb 2006
Location:
Posted: 7th Dec 2007 12:40 Edited at: 7th Dec 2007 12:46
waffle, waffle

you know I was only kidding, right?
wild doogy
16
Years of Service
User Offline
Joined: 3rd Dec 2007
Location: In a Cybersuit.
Posted: 8th Dec 2007 20:46
Idea:
have a set of formulas to st up how good things can be for the new content. so that someone cant make a monster that is super fast, strong, lots'a health, and damage.
Me and a friend are working playing around with a game called battleships forever where you can make your own ships and edit the weapons. in three days our ships have gone from pretty good to so absoflipinglutly good that the best stock ship in the game last .02 seconds. we are trying to have a tornament and we came up with some formulas to determin ship speed, acelleration, and turning by the size of the ship.

anyhow you should make something like that so there is some sort of reason to the madness.

sounds like a great idea! and keep up the good work

Wild_Doogy
jason p sage
17
Years of Service
User Offline
Joined: 10th Jun 2007
Location: Ellington, CT USA
Posted: 19th Dec 2007 22:37
TechLoard - The Dungeon thing - In that game Fate...

Quote: "Quote: "Another neat thing about it is the dungeon "engine" is completely Random - when you start a new game - it builds it all randomly (it seems) but the look of it is not boring at all!"
I will take a look at this in the future, but, I do prefer specific levels so players have a sense of orientation in the game world. Additionally, the concept behind the level building is user driven, thus, multiple users can collaborate constructing the city from a library of buildings, bridges, etc."


Well - in a new game - it makes the random levels (I think it picks a RANDOMIZE NUMBER for that game) Then the Level One for example is always the same for that "GAME" where if you made a new game - its not the same.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 2nd Jan 2008 02:53 Edited at: 12th Feb 2008 10:10
Game Design: RTS Elements {Building, Crafting, Mining, Farming, and Breeding}

Today, I took a long hard look at the RTS Elements in cRPGs: Farming, Crafting, and Building. To help me formulate a plan of hierarchal implementation into the game/engine, I've generalize these features into simple definitions.

Farming is the input of a 'energy source' into a object, to promote growth and replication of an object in a specified or unspecified amount of quantity & time. Examples: rising animals, growing trees and crystals.

Water >> Seeds => Tree => Fruit => Seeds
Mana >> Cystals => Cystal Tree => Mana
Seed >> Chick => Chicken => Eggs => Chicks
Haybail >> Calf => Cow
Chicken >> Baby Dragon => Adult Dragon
Cow >> Adult Dragon => Fire Breathing Dragon

Mana >> Dragon Egg => Baby Dragon

Mining is a subset of Farming that requires input of energy source and time to `gather\process` raw material that grows or mutliplies naturally without manual input.

Grass --> HayBail
Ore --> Metal

Breeding is the replication of a object by mating.

Bull (Male) & Cow (Female) => Calfs
Dragon (Male) & Dragon (Female) => Dragon Egg

Byproducts of Farming/Mining can be used as raw material for crafting.

Dragon Saliva --> Fuel
Cow Hide --> Leather
Tree --> Wood

Crafting is input/combination of one or more raw material to output a item in a certain timeframe. Examples: Spells, Weapons, etc.

There are two types of Crafting: Specified and Unspecified. Specified Crafting requires specific amounts of raw materals to output a specific item. Unspecified Crafting uses different combinations of raw materials to output different types of items in the same category.

Metal (3) + Leather (1) --> Broad Sword
Dragon Saliva (1) + Fire Scripture (1) --> Fireball Spell

Building is the input of crafted items and matured farmed animals/trees objects and to output more complex architectural structures and machines that can store or produce mass quantities of energy and products.

These RTS elements will gameplay mechanics of resource gathering, base building, army building, evolution and expansion. It will also support economics of the game world through the selling, buying, and trading of goods and animals.

The GIVE/TAKE inventory system will be put to use in supporting farming/crafting/building.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 12th Jan 2008 14:58 Edited at: 23rd Jan 2008 04:03
Game Design: Level Up

As DMORG will be a game of survival, I wanted to do something different with Leveling Up. Thus, I thought to myself why not increase a Player's Characters XP based on the how long they manage to keep their character alive. I could use a realworld 24hour Clock for this purpose.

I also desire to add a heroism reward system for players assisting other players. This may be mission (quest) oriented.

I have also considered designing the game as single player in mission and combat, integrating multiplayer in Public areas such as Taverns, Inns, Tournaments.

TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 21st Jan 2008 01:34 Edited at: 21st Jan 2008 01:36
Engine and Game Design: Name that Game/Game Engine.

DarkMORG is the working title for the game and engine, but, im definately in the market for a official name. I have unofficially named the engine OMEGA which I'm striving to make it my Final Game Engine that will support many of my other game ideas for other game genres.

As for the game title itself I've considered several titles which are already being used (ie DarkEarth) for games or movies. Open to input here.

Dewi Morgan
16
Years of Service
User Offline
Joined: 16th Jan 2008
Location: London, UK
Posted: 21st Jan 2008 02:50
XP for time? Scary idea, but could be made to work.

Would need to make it so that there were not places where people could go and be safe, and yet still gain XP. If, say, the very top of trees were safe, then every tree would have a goldminer sitting at the top, so that the character could be most easily levelled up and sold online as a high-level character.

HOWEVER, if you decide that you want to encourage that kind of behaviour (players loathe the idea, but it has commercial advantages), then make it so they can just sit at home and gain XP. Heck, even just rank their level against the date they registered.

Yet another game programmer
Roses In Dreams
16
Years of Service
User Offline
Joined: 16th Jan 2008
Location: Somewhere outthere.
Posted: 24th Jan 2008 08:32 Edited at: 6th Feb 2008 09:42
[edited] forum posting etiquettes has been learned by roses in dreams.
Roses In Dreams
16
Years of Service
User Offline
Joined: 16th Jan 2008
Location: Somewhere outthere.
Posted: 24th Jan 2008 08:52 Edited at: 6th Feb 2008 09:43
[edited] forum posting etiquettes has been learned by roses in dreams.
.
Fluffy Paul
21
Years of Service
User Offline
Joined: 16th Dec 2002
Location: United Kingdom
Posted: 29th Jan 2008 16:34
sorry I'm joining the topic a little late. I've been on a break

Quote: "I have coded the basic Network Chat Code. The code is currently based on Paul "Fluffy" Morgan's Chat. Yes! Im using DirectPlay Commands."


Wow. Someone used my lame example chatroom to learn about networking! Sweet!
I tried to strip it down to it's simplest level. I find justifying the horrid variable set-up screens like that helped me sleep at night. I actually used that program to teach kids how to network stuff. We invented it on a whiteboard and coded it over a week.

Quote: "I've been pondering over two ways to handle this, 1) preprocess the command locally sending a special Network Message or 2) Send command string in its entirety interpreting on the client."


When I evolved the chatroom and incorporated it into my multiplayer stuff I used option 1. Mainly to cut down on the traffic, also to make it a little tricker to hack the executable.
(I had some script kiddies in one of my schools who moved on to decompiling my programs!)

It's nice to see some other peeps tackling something big and exploring all the facets.

I really love the creativity that's going on here. Much love to everyone who is posting constructive stuff.

Ending a sentence with a French word is so passé
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 17th Feb 2008 09:30 Edited at: 15th May 2008 19:08
Game Design: Rethinking DarkMORG.

As I continue to write documentation and code for the DarkMORG Engine, I have concluded that the focus of the game has significantly changed from my original intent to create a survival horror rpg. I have since decided to develop a Fantasy themed FP RPG similar to Morrowind but a FPS Combat System. This is not to say it will not have zombies, but, zombies are not the highlight of the game.

Fluffy Paul
21
Years of Service
User Offline
Joined: 16th Dec 2002
Location: United Kingdom
Posted: 17th Feb 2008 14:01
I think if you have an engine that lets people shove things round a 3D world over the internet then it's only really the game media that dictate the theme.

How much of your planned changes need your core code to be reworked? Could you just swap all the different zombie models for Orcs and Elves?

Ending a sentence with a French word is so passé
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 18th Feb 2008 19:23 Edited at: 18th Feb 2008 19:25
Quote: "How much of your planned changes need your core code to be reworked? Could you just swap all the different zombie models for Orcs and Elves?"
Honestly, I have recently started to seriously code and I'm re-writing Server/Client using IanM's TCP/UDP Matrix1 Utils.

I have yet to dig into any modeling. In fact the modular entity construction system I plan to implement requires me to work out the networking aspects first as all data is stored and managed in MYSQL database.

As was designing the game, I realized that a great deal of my ideas were derived from playing fantasy based rpgs both PnP and PC. I want to develop and release a unique RPG. Then it dawned on me. Its not the theme that needs to be unique, its the gameplay.

My truest desire is to bring freedom and creativity of PnP gameplay to a MORG. So why abandon Elves and Dragons where thats where it all begin for me. Why does the RPG need to massive to be online, when a small party (upto 8) works better and makes more sense to me?

Quote: "I think if you have an engine that lets people shove things round a 3D world over the internet then it's only really the game media that dictate the theme."
This is my exact Goal!!!

Many of the ideas I've discussed here are going into the game and yes there will still be Zombies LOL. I've have decided to design the game engine with 5 key features in mind: 1)In-Game/Out-Game Interactivity, 2)Cooperative Player Created Assets and Quest, 3)Modular/Prefab Entity System, 4)High-performance FPS Combat Networking, and 5)Text-driven UI.

Roses In Dreams
16
Years of Service
User Offline
Joined: 16th Jan 2008
Location: Somewhere outthere.
Posted: 20th Feb 2008 10:41

You have already gone far with your project.
On the other hand, I'm still on the verge on making a decision.
I started programming just this year and Im planning on making an MMORPG.(the overly ambitious newbie goal)
I read TDK's tutorials,command help files and other tutorials.Im gonna have my first programming class about 3 months from now on C.

I need some honest and serious opinions from you.(Im a fan)

If I keep on working on an MMORPG persistently, can i complete 1 in say 5 years?
Can you kindly share some advices on how to keep working on a project persistently like you?
What kind of attitude should I have and how do I optimize my time and skills into my project?
Mostly, after a couple of years, would i still have the passion for it?
TechLord
21
Years of Service
User Offline
Joined: 19th Dec 2002
Location: TheGameDevStore.com
Posted: 20th Feb 2008 18:30 Edited at: 28th Feb 2008 12:12
Quote: "I need some honest and serious opinions from you.(Im a fan)"
All I can say is Wow! Thanks.

Roses In Dreams,

I'm going to be honest with you. I've been working on games/applications for 10+ years now. I have attempted to create several FPS games with a numerous game creation languages, packages, engines, etc. I have joined several programming communities and lead the BlitzBasic Project Plasma FPS Community Project that unfortunately vaporized due to poor coordination on my part.

I've wasted a great deal of time creating Tech Demos. I have yet to make the FPS Game of my dreams. So the only thing driving me, is the shear willpower to produce a game beyond my 100th Asteroid Clone. I'm developing this game for me. If others enjoy it great, but, that isn't my motivation.

So my advice to you is to first write/blog/post why you're making the game. Next, write/blog/post who you making it for. Third, write/blog/post what you want in your game and why. This is your Design Doc. Once you write/blog/post this Design Doc, your game will begin to take shape.

Login to post a reply

Server time is: 2024-11-25 18:54:07
Your offset time is: 2024-11-25 18:54:07