Cavern of Inane Natter · Legacy archive

[AG Game Development] - Coldforged Adventure

Started by Ancient Gamer Feb 6, 2009 47 posts Locked

  1. [AG Game Development] - Coldforged Adventure

    #1

    When I was younger I was hooked big time on computer games. I guess I am what you can call a first generation computer gamer. That is unless you count the AT&T Bell geeks that created and played Pong during the seventies. I guess they are the real first generation.

    But I was one of those kids that frequented the arcade gaming halls during the early eighties, and in the mid eighties I got my own computer, a Sony MSX quickly followed by a Commodore 64. It was official: I was hooked.

    For years I gamed for far too many hours a day, neglecting all but the essential basics of life: food, sleep, girls, roleplaying and beer. When others worked, I gamed. When others studied, I gamed. Some would say I gamed too much. If I had been my own father, I'd put down some heavy restrictions, and way before I had reached that point.

    Be that as it may. Suffice to say I was a major gaming junkie. Major.

    But luckily for me I was curious as to how everything was glued together. So I started studying C++ and hardware and Photoshop and 3D Studio and Maya, another 3D modelling tool. I read the Games Developer Magazine and when Gamasutra.com surfaced, well, I enlisted as a member there too.

    But life did not turn out the way I planned when I was 20. I got kids. I woke up and I got a job, like everyone else. The game developer career went out the window, I had grown too old, and I entered the consulting arena instead; a software mercenary. Coder for hire. Meaning I get to customize and improve our customers' applications for a loooot of cash. I got the cash but missed out on the fun.

    So here I am, a dad in his mid thirties, with this insane amount of programming knowledge, with intimate knowledge of every aspect of game development, but precious little time and, honestly, a bit burnt out too.

    But I want that game. I want to create a game, I can do it for sure, no problem. No problem but time.


    Technical Specifics:
    Development Platform: Flash Game
    Game Genre: Either post apoc or fantasy strategy rpg.
    Game Type: Isometric view of map, with tactical combat simulations and leveling of main PC and his troops.
    Game Goal: Secret approach that none has done before, but which will be uber cool. Reference: Old skool games like Elite, Defenders of the Crown, Ultima and Fallout.



    So, I have decided upon using flash. While I lose freedom, it will be easier for everyone to play.

    The game is mouse based, with different menus.

    Main Game Surfaces:
    - Isometric Terrain map for journeys and cities
    - Close up map of combat terrain


    Menus:
    - PC Menu
    - Troop Menu
    - City Menu
    - Settlement/Fort/Camp Menu
    - Dungeon Menu
    - Quest Menu
    - Random Event response Menu
    - Tactics Menu (When the hero can make tactical choices, which will be before battle and at some junctures mid-battle)
    - Trade Menus (Caravan Market Menu)

    Controls:
    - Caravan controls when the hero is with a caravan
    - Settlement controls when the hero is in a settlement he controls
    - Hero and hero personal bodyguard unit control in battles
    - Kingdom control when the hero is crowned king of a nation
    - Faction control when the hero is elected faction leader

    Battle Types:
    - Full scale field battle. At first this will be limited to ten to twenty men fighting each other, but with time it may involve hundreds, if not thousands. Typically in the field and during sieges (on both sides of a siege)
    - Single battle. The hero fights alone, or with a few companions. Typically in duels, arenas and dungeons.

    Spice of Life:
    - Custom made (not random) Quests
    - Random events (life and death, boons and curses and more that affect the hero and his family)


    Give me old skool or give me death.
  2. Re: The game I would enjoy creating within the next two years

    #2
    I hear ya.

    What will be that secret approach about again?
  3. Re: The game I would enjoy creating within the next two years

    #3
    If I say that it wouldn't be a secret, would it?

    Well, I have analyzed other games that are akin to what I am trying to do, and I have found a number of aspects that annoy the heck outta me. I am gonna remedy those. The result will be quite spectacular, I assure you. Hopefully I can corrupt the new generation, making them forgot RL and just play my game :)

    As I am gonna do this on my own I need to do what a man can do by himself, and avoid the pitfalls that devour time. I need to retain the kickass elements of gaming, while carving off the dead meat and chrome that no one needs.

    Neither graphics nor programming will be difficult. What will take time is writing the storyline material and creating the lists.
  4. Re: The game I would enjoy creating within the next two years

    #4
    Terrain map:

    - Global level map will be done in photoshop. The flash game will scroll in whichever direction the hero and his party moves, 360 degrees.

    - Battlefield maps will zoom in and the terrain will be generated by an algorithm. Principal terrain types (from the global map) will have a higher likelihood of spawning than others. A tree hex will likely contain another tree hex beside it.

    - Movement will be regulated by terrain, rivers and roads. Ox-carts, horses, river barges, ships and such will increase traveling speed.

    - v1 will not have dungeons and arenas. Those will appear in later versions. Battles will thus be limited to battlefields/sieges in the first version. Possible additions after arenas, dungeons and battlefields are: ocean battles, river barge battles, mage duels.

    - Battles will often be centred around caravans. These are the victory conditions:
    1. Full victory: The PC outmaneuvers and conquers the field, killing or capturing all enemy troops.
    +: Spoils of war, experience, morale boost, slaves, ransom for nobles and wealthy merchants and rogue kings.
    -: Loss of lives, possible morale loss (if a large number of men died)

    2. Marginal victory: The PCs troops win the day, forcing the enemy to flee the field
    +: Spoils of war, experience, morale boost
    -: Loss of lives, possible morale loss

    3. Stalemate: Both factions quit the field
    +: Experience
    -: Loss of lives, morale loss

    4. Battlefield escape: The caravan dashes for safety, the vanguard pushing through any resistance and the others protecting the rear and flanks. There will be a battlefield escape command options and the PC will have to maneuver carefully lest his troops becomes bogged down in melee. A well executed battlefield escape will boost morale tremendously.
    +: Experience, morale boost
    -: Loss of lives, morale loss

    5. Marginal defeat: The PC and his troops are forced to flee the field of battle.
    +: Experience
    -: Loss of lives, heavy morale loss

    6. Full defeat: The PC and his troops are all slain or captured. The PC CAN survive this if he yields (a yield command will be available).
    +: Experience
    -: Loss of lives, loss of all equipment carried by the PC and caravan, months or years go by waiting for ransom (killed if there are no funds)

  5. Re: The game I would enjoy creating within the next two years

    #5
    The game will slant towards dark fantasy instead of high fantasy or post apoc.



    ***********

    - The first version of the game will just be a combat terrain spawner, with full combat functionality. So: No global map, no trade and settlements and such, just tactical combat. Hopefully someone will beta test that version.

    - During the iterations of version one (1.0.x.x) the game will be upgraded with several new enemies. At first we talk human soldiers of varying nations and allegiances, cavalry, chariots with priests, arches or warlocks (and so on with human troops). After that comes forest trolls, divine serpents, dream hosts, angaoth, eternals, demonpossessed troops (of any kind), and so on.

    - The second version of the game will include a player character generator. The game will support a plethora of character professions. (I am so sick of fighter, mage, +1  of cleric or ranger or thief).

    - The third version of the game will include the basic global map. At that point all you can do is travel the global map and fight.

    - The fourth version of the game will include the major settlements of the continent, plus additional islands.

    - The fifth version of the game will include sea travel, river travel, trade and economy.

    - The sixth version of the game will include GM tools, such as a quest editor.

    Further versions will include quests, wars between kingdoms, barbarian incursions and rogue warlocks that tap heavily into chaos.
  6. Re: The game I would enjoy creating within the next two years

    #6
    Dark fantasy... sounds good, but let's not get premature. :)

    The game will support a plethora of character professions. (I am so sick of fighter, mage, +1  of cleric or ranger or thief).


    I'd be willing to try for that promise alone! Too bad there probably won't be priests of Mathom... somehow they don't get into any computer games. :|
  7. Re: The game I would enjoy creating within the next two years

    #7
    Oh, but the High Priest of Mathom is lead developer!

    So. I have fleshed out enough material to conclude the vision phase to be done.

    I have been thinking. While reaching the masses is a worthy goal, I AM actually a Windows developer. This means that I have the entire spectrum of Windows development skills and software at my disposal. As I perused my software earlier today I realised I didn't have enough modern Adobe products to make the flash game.

    Therefore I go for a managed code assembly, a portable executable that is installed by an installer.

    Windows Forms is available for most Windows XP installation, but some would be required to download the .NET 2.0 Runtime. Of course, creating the game in .NET 3.5 would allow me to toy with those cool WPF features. Hmm...

    I will save the class diagram for offline perusal, lest I scare everyone away. 
  8. Re: The game I would enjoy creating within the next two years

    #8
    Ugh. Requiring the download of the .NET runtime will just lead to DLL hell. You should know that. At minimum, PLEASE include it as an option in the installer.
  9. Re: The game I would enjoy creating within the next two years

    #9
    Silly, the .NET runtime eliminates DLL hell due to the .NET introduction of the global assembly cache and versioning. DLL hell dies slowly with the registry. You can target the .NET build in Visual Studio and you can set the .NET version as a prerequisite in the installer.

    Sorry Chaosmark, I've done this plenty of times before. It is my meat and staple.

    DLL hell was a thing of the past when software vendors released new versions of their software DLLs and external companies used those DLLs. One company could require version 1.0.0.1 while another required version 1.0.0.2.

    Yes, we are talking native code here, not managed code.

    When you start working in the biz you will learn quickly enough about design patterns and software design.

    Software development goes way beyond what they teach you at school, Cm. Not to sound patronizing, but I've become blunt and to the point in a world of know it alls.
  10. Re: The game I would enjoy creating within the next two years

    #10

    Silly, the .NET runtime eliminates DLL hell due to the .NET introduction of the global assembly cache and versioning. DLL hell dies slowly with the registry. You can target the .NET build in Visual Studio and you can set the .NET version as a prerequisite in the installer.


    I seem to recall it still being a problem thanks to people needing various versions of the .NET runtime for their various programs, not all of which use the same one. I can see bypassing it as long as the runtimes are kept separate, but I had heard differently. Enlightenment on the horizon I hope?


    Sorry Chaosmark, I've done this plenty of times before. It is my meat and staple.
    ...
    Software development goes way beyond what they teach you at school, Cm. Not to sound patronizing, but I've become blunt and to the point in a world of know it alls.


    Pfft. Like I would care even if you did sound patronizing. As you said, it goes far beyond what they teach me here. Thus, I have to learn it somewhere, and that leaves one source: industry professionals like yourself. Might as well learn it now and avoid it later, ayuh?
  11. Re: The game I would enjoy creating within the next two years

    #11
    Alright. But not in this thread. This is my darling game creation thread. :)

    DLL Hell, as we know it, can be avoided altogether by using managed code and careful versioning. If you follow SOA and develop your software objects in "waterproof compartments", everything should be okay.

    So you target a specific runtime in your build.
    So you set it as a prerequisite in the installer.
    So you make sure that you carefully plan your software ahead, making sure the signature is NEVER changed between objects and services. Meaning, if a service returns a specific set of strings and booleans, it always returns those with no changes in the signature that could disrupt usage by exisiting customers. (Trust me, they get mad at you when you change those parameters, or worse yet, that method name in your web service, leaving a lot of other software vendors hanging as their code relied on yours. Not everyone wants to rebuild their software just because you did so).

    Obviously I've gone outside the limitations of pure DLL hell here, but you get the idea: Always make sure that your software support past as well as new users. The slightest change in the return values of your software and people start suffering.

    Of course, you can also start sealing classes to make sure no one inherits your class, thereby eliminating the need to consider those that may use your software.

    Now, if you please, I would like to return to my musings around my game. :)
  12. Re: [AG Game Development] - Coldforged Trueblood - Traders of the Sword

    #12
    Tonight I am gonna start coding the map spawner
  13. Re: [AG Game Development] - Coldforged Trueblood - Traders of the Sword

    #13
    Spawn away!
  14. Re: [AG Game Development] - Coldforged Trueblood - Traders of the Sword

    #14
    Based on the various things you mention, I make the assumption that you're going for a turn-based game. Is this a valid assumption, especially with the combat simulator? I'd think that would change how much data you're generating with your map spawner.
  15. Re: [AG Game Development] - Coldforged Trueblood - Traders of the Sword

    #15
    Actually I want to make it real time. Turned based games are the favorite thing of my players, but I love turned based real time.

    Like most other applications, I am gonna use space bar to pause and unpause the game. During pauses you can issue commands to nearby units, but only the hero and his bodyguard is directly controlled by the player. Hmmm... Or not. I must see how well that plays out. Perhaps I can even enlist the aid of a certain computer loving Slovakian in that respect.

    The map will be hex based, but no hexes will be shown.
    I am considering top down perspective instead of isometric. I think top down is better for my purpose.
    Graphics will be simple, but not too simple. Basically it will kinda be like moving inside one of the better RPG map editors.
  16. Re: [AG Game Development] - Coldforged Trueblood - Traders of the Sword

    #16
    Newsflash:
    Oh, this is fun! It is! I never realized how easy this would be! I am actually writing software and loving it. I can't remember the last time I felt joyous about writing code!

    The spawning class is about half done. The algorithm requires some mind work, to make sure the grids become believeable and in harmony with the global map (which is NOT random. Only the combat map is randomized, based on principal terrain types in the global map location of the hero).

    I think I will get this 75% done by the time I go to bed.

    Of course, after the spawning is done, I need to get down and dirty in Photoshop.

    Looking forward to that.
  17. Re: [AG Game Development] - Coldforged Trueblood - Traders of the Sword

    #17
    Newsflash:
    Architectural drawings: Yep, it required some mind work alright. The coding grinded to a halt and I went back to planning. I drew a revised version of the class diagram, then I re-evaluted the enum matrix and how to enhance the terrain spawning algorithm.

    The plans seem sound and tonight after fitness training I am gonna implement them.
  18. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #18
    - The map spawning algorithm works wonderfully. Now I got to adjust the measuring system so the maps become believable. Can't have ocean squares in the middle of a desert :)
  19. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #19
    Thought this inspirational, though tangential to thread.  :)

    [http://blog.wired.com/gadgets/2009/02/shoot-is-iphone.html?npu=1&mbid=yhp]

    What are all you coders and programmers waiting for??!! iphone wants to make you rich!  :D
  20. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #20
    By contrast, Apple's iTunes App Store provides a platform for marketing, selling and distributing software; all a developer needs to provide is a good idea and some working code.


    Working code is easy enough to come across. It's the good idea that's hard. AG has one here. But stop and think: for every potential Guitar Hero or Tracks of Desolation, how many other games bit the dust hard? How many other games on the Apple store didn't make their developer millions pre-taxes? Such is the problem with game programming.

    Luckily, we've got the potential for a real good'un here. Keep the updates coming AG!
  21. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #21
    I'll do this one step at a time, and I will create a game I believe in. The litmus test will be whether my preferences are too exotic, and whether the game experience is enjoyable or not.

    A lot of coders fail because their ideas are poor and their end product suck. Still a number of coders fail because their are lazy, which is my cardinal sin for sure.

    But that was a nice article, Muro, and thanks for the encouragement Chaosmark. The updates will be coming as I work on the game.
  22. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #22
    Will I be able to play the game on my Linux? :)

    But: keep it up! Eagerly waiting for the first Beta!
  23. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #23
    I am not developing using the mono project ( http://www.mono-project.com/Main_Page ), so I am afraid the answer is no. ;P
  24. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #24
    Here a random article on the topic of CG difficulty - a few of those tips may apply to your game:
    http://www.gamasutra.com/php-bin/news_index.php?story=22313
  25. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #25
    Thanks!

    The article has been read and as a lifelong computer gamer, these are valid points that I have spent quite some thought on.

    At this juncture I think I will be going for:
    - Difficulty levels that can be changed whenever.
    - HQ based saving (can only save when in some sort of safe haven, be that a town, a fort or whatever)

    The flu is releasing its grip. As soon as I am back on my feet I will resume posting here.
  26. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #26
    What will the game be called?
  27. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #27
    That, my friend, is the big question.

    I am toying with different names as I am working on it. I think it will be called "Coldforged" something. :)
  28. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #28
    Once again my head is above water.

    As Strolen I use my pet projects to increase my understanding of software. This project will henceforth be developed using Silverlight 3.0.
  29. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #29
    Ideas dumped for future reference:

    Recruiting can only be done through these menus:
    - City Menu
    - Settlement/Fort/Camp Menu
    - Random Encounter Menu (Slim chance)

    Troop Types:
    - Equivalent to a S&C setting, low magic.
    - Mostly human troops, with the occasional exotic elven or dwarven regiment.
    - Battlemages rare, with only a handful in the game. These will prove to be a full company in their own right.
    - Hero & his bodyguard regarded as a company. Hero and some very rare units may have magic items.

    Hero:
    - Can be married
    - Will eventually die, but can prolong his lifespan through occult means. Moral dilemmas possible.
    - Possible game prolonger = children of the hero.
    - Possible strife due to bastard children vs. children born in marriage (With claimant to kids' property warring to "regain what was rightfully his/hers from birth")
  30. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #30
    First time I read this thread. Most happened while I was deployed. I must say I am very excited!! I have spent many a hour playing Ikariam and Travia types and this one seems right up my alley.
  31. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #31
    AG FTW!
    Also, if you're aching for flair, ideas, or whatever, feel free to poke me. I also am willing to beta test.
  32. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #32
    Will do. This project is time consuming, and I am working on the software framework and world model. After a while I will need beta testers, and when the GM tools are done I will need storywriters.

    But understand that we are talking Q1 2010 here before I will need the testers (for sucky initial versions). Q3 2010 before I will need storywriters.

    Thanks though. I will bear your comment in mind and send you a reminder when the time is due.
  33. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #33
    Been just re-reading the thread for fun and noticed...

    Battle Types:
    - Full scale field battle. At first this will be limited to ten to twenty men fighting each other, but with time it may involve hundreds, if not thousands. Typically in the field and during sieges (on both sides of a siege)
    - Single battle. The hero fights alone, or with a few companions. Typically in duels, arenas and dungeons.


    There should be also the 2in1 option, when the hero opts for less control of the larger battle, but can personally join and take out an important enemy unit, with a big morale boost for his troops, and loss for the enemy - of course, with the appropriate risks. Is probably already there, but just in case. :)
  34. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #34
    :up: Good one!
  35. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #35
    Army Notes:
    The Dhargenas Charter of 243 clearly states that individuals not of noble or royal blood may not possess armies of more than 1 cavalry company and 2 companies of footmen. Any individuals not accompanying nobles or royals, and with more men that this, shall be considered rebels and hunted down as such. 1 company in the Dhargenas Charter is referred to as 200 men.

    Becoming a noble, or getting a royal letter of permit may as much as triple these numbers. Only royals may have armies of substantial size.

    On the battlefield the army will be organized in squads and companies. The player will have to add new squads to existing, or newly created, companies. Each company will have a standardbearer, and in the first company that standardbearer will be among the player's personal squad of bodyguards.

    *(hire by squad basis, unless he/she hires a heroic unit, such as Battlemages, Paladin Princes, Grand Inquisitor Hexenjaegers, Mountain Trolls and the like. Through luck, good equipment and good planning by the player a normal squad member may rise to heroic status).
  36. Re: [AG Game Development]

    #36
    Oh my, I seem to be on a roll now. Several Silverlight game exercise /self study programs have been successfully written. Focus now moves to Photoshop and icon creation.

    Gonna create all those tactical map PNG graphics (Every graphic will have 2-4 variations x 2 seasons (summer & winter) = 4-8 variations:
    - High Grass
    - Light coniferous forest
    - Dense coniferous forests
    - Light deciduous forest
    - Dense deciduous forest
    - Dark forest
    - Fields
    - Hills
    - Mountains
    - Swamp
    - Sand Desert
    - Stone Desert
    - Ocean "spice / chrome" (the ocean and shoreline will not be images but written programmatically )
    - River x 8 directions x 2 seasons (N, NE, E, SE, S, SW, W, NW in summer and winter)
    - Small path (like river)
    - Dirt road (like river)
    - Cobbled road (like river)
    - Hamlets (5 variations x 2 seasons) with and without roofing (roofs pop up as friendly unit enters building. (Building provides cover for archers and mages and the like))
    - Town house (15 variations x 2 seasons)
    - Various temples, keeps, wooden palisade fortresses, Towers, blah blah
    - Caves

    Am I missing any?

    The spawning algorithm will be used to position these graphical elements on the canvas (meaning every tactical map will have been randomly generated, except some quest related maps that GMs can create themselves).

    On second thought... Roads and rivers may also be programmatically created.


    The Grand Map, used for world travel outside combat, will have to be created entirely in Photoshop. The first editions will be on a sandbox island (I'll use the Dhargenas setting's island of Dholg for that purpose).
  37. Re: [AG Game Development]

    #37
    Report:
    First map rendering has been completed. While the random algorithm did it's job, the light coniferous forest graphics I quickly produced in Photoshop left something to be wanted.

    I will have to draw the graphics by hand, scan them, process them in Photoshop and then miniaturize them. Emphasis on shading and hues.

    Tried top down bird perspective for the trees, but I think isometric is more what I am looking for. (The game will be 2D)

    A.I. type brainstorm:
    Charger
    Coward
    Ambusher
    Flanker (both Hannibal type flanker and the more usual cavalry flanker)
    Defender
    Slow retreater (showers enemy with arrows - typically horse archers)

    Morale levels:
    Green
    Normal
    Veteran
    Elite
    Zealot
  38. Re: [AG Game Development]

    #38
    I want weather and lighting conditions!!!

    - Night / Dusk / Dawn / Day
    - Fog
    - Snow
    - Rain
  39. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #39
    Realistically, rain might impact water features by making rivers swell; it would also make dirt roads muddy. Not sure if you want to incorporate this.
  40. Re: [AG Game Development] - Coldforged - Tracks of Desolation

    #40
    Well, I need to be realistic on this one. Game features are gonna be important, but I don't have Industrial Light and Magic at my disposal. I've got, like, my own ageing photoshop skills. I used to be good once, but the day I sat like a zealot madman and made 2D and 3D imagery is way gone.

    I might make rivers swell though, but don't expect the craftsmanship of Michelangelo.

    (I've had a few glasses of red, red wine after writing this so I apologize if I come across as blunt or harsh) Have an excellent evening my fine Slovakian friend!

Cavern of Inane Natter · All categories · Guildhall