Official Codex Discord Server

  1. Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.
    Dismiss Notice

[WIP] The Making of Realms of Quest V (for the Commodore VIC-20) official thread.

Discussion in 'Codex Workshop' started by hitfan, Aug 10, 2014.

  1. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    Click here and disable ads!
    ***EDIT*** : THIS GAME IS NOW BEING MADE FOR THE COMMODORE VIC-20.

    After Realms of Quest IV for the VIC-20 was released by Psytronik (details posted here http://www.lemon64.com/forum/viewtopic.php?t=33239 ), I've been mulling over and having fun speculating how I would make Realms V... if I were so inclined (which I seem to be more so now lately).

    I'm upgrading from the VIC-20 to the C64 as my platform so I can take advantage of the following:

    -more screen space (320x200 pixels, 40x25 character screen) so that a lot more information can be displayed at once.
    -SID chip music
    -sprite graphics that can be superimposed over text or hi-resolution graphics area.
    -much more RAM
    -better internet documentation on programming tricks (like raster interrupts for graphical effects and the like)

    I've composed the following mockup screen:

    [​IMG]

    The upper left corner would feature a 112x112 pixel area for 3D dungeon view. Upper right would be an area to select menu commands and display textual information. The bottom of the screen would be reserved for the player's 10 character party.

    I posted about Realms of Quest I-IV on here: http://www.rpgcodex.net/forums/index.php?threads/the-big-indie-rpg-list.36216/page-5

    You can also read progress reports here: http://www.lemon64.com/forum/viewtopic.php?t=51114
     
    Last edited: Feb 12, 2017
    • Brofist Brofist x 3
    • hopw roewur ne hopw roewur ne x 2
    • nice nice x 1
    ^ Top  
  2. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    The game will also feature 16 races and 16 classes:

    [​IMG]

    [​IMG]


    Alignment will play a factor in this game.
     
    Last edited: Feb 7, 2017
    • incline incline x 1
    ^ Top  
  3. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    Yesterday, I also was converting images I found on Google Images to C64 format. I intend to use a 112x112 pixel area (56x112 multicolor pixels) to display graphics for the monsters or various images of other NPCs and views.

    I made the following 3 monster images: kobold, orc and succubus:

    [​IMG]

    I'll use 5 sprite images per raster line to display the entire image (25 sprites on screen in all). I plan to program the game entirely in machine language.

    4 grayscale colors are used here, but I might change that to black-brown-orange-pink later on.
     
    ^ Top  
  4. TigerKnee Prophet

    TigerKnee
    Joined:
    Feb 24, 2012
    Parrots:
    1,723
    So... why are you adding random LoTR stuff inside? Like I mean having both Orcs and Uruk-Hai.

    Mite redundant, don't you think?
     
    ^ Top  
  5. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    So 2 1/2 years later, I decided to continue the project. But this time I'm going to be making it for the VIC-20. Considering that the "Unknown Realm" game is getting a lot of hype on the C64 platform, I figured that I'd stay with the platform that I'm most comfortable programming for.

    -32K RAM expansion required (lesser expansion modes will not be supported this time around)
    -multiple disk sides (will play on a disk drive, but to avoid excessive disk swapping the game works best on an SD card reader or 2 disk drives)
    -hundreds of monster, character and scenery portraits (44*88 multicolor pixels)
    -16 player races and 16 player classes
    -A party can have up to 10 player characters (I think this would be a record for 8 bit RPGs)
    -printed game manual and box
    -game music
    -possibly and overland map that exceeds the Ultima IV world in terms of size
    -cities to explore and townspeople to talk to (possibly).

    If pressed for time, I might just make it into another Dungeon crawler.

    I've designed the game's font quite a long time ago, also designed icons to represent the alignment, sex, race, class and status of the character (see attached image).

    I'm also hoping to delegate the graphics, music and even story writing tasks to others so I can completely focus on the aspects of programming and designing the game. Failing that, I'll just hand design the graphics myself and I'll transcribe public domain music to 8-bit format (I took piano lessons when I was a kid, so I can read sheet music).

    Races and classes are represented by their own unique icons:

    [​IMG]

    I created this font a few years ago with the intent of making an interactive fiction game based on the works of Edgar Allan Poe:

    [​IMG]

    And this is a mock screen of how the party information will be displayed. It's rather tight, but it conveys a lot of information: party member number, name, level-up status, hit points, health status, magic points, type (alignment+sex+race+class).

    [​IMG]
     
    • Brofist Brofist x 3
    • Interesting Interesting x 1
    ^ Top  
  6. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    Because Uruk-Hai are "Super Orcs" in my game. Regular orcs kind of suck (but they need less XP to level up).
     
    ^ Top  
  7. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    I've mostly planning out how to store the party stats and the overall data storage of the game:

    DISK SiDE 1 - BOOT, GAME ENGINE, CASTLE (create characters), LAND data
    DISK SIDE 2 - DUNGEON data
    DISK SIDE 3 = MONSTER graphics data
    DISK SIDE 4 = CITY data

    Ideally, the player will use an emulator or an SD card reader on a real machine so the game only concerns itself with effectively one (very big) disk side. In the case where the player is using a single floppy disk drive on a real machine, there will be quite a bit of disk swapping. But if a player has two disk drives, drive 8 will be used to flip between sides 1 + 2 while drive 9 will be used to flip between sides 3 + 4.

    Each player character will have stats that comprise of 33 bytes:

    Code:
            ;#    WHAT                          
            ;0    Alignment    0 = chaotic    1 = neutral    2 = lawful              
            ;1    Race                          
            ;2    Sex    0 = male    1 = female                  
            ;3    age years                          
            ;4    age months                          
            ;5    status    0 = blank    1=good    2=wounded    3=poisoned    4=paralyzed    5=statue    6=dead
            ;6    class                          
            ;7    level                          
            ;8    level gained/xp                          
            ;9    str                          
            ;10    int                          
            ;11    wis                          
            ;12    dex                          
            ;13    con                          
            ;14    cha                          
            ;15    Hit Points                          
            ;16    (hp hi byte)                          
            ;17    Max Hit Points                          
            ;18    (mhp hi byte)                          
            ;19    Spell Units                          
            ;20    Max Spell Units                          
            ;21    Companion                          
            ;22    Comp Hit Points  
            ;23    (comp hp hi byte)
            ;24    Comp Max HP
            ;25    (comp mhp hi byte)
            ;26    Weapon                          
            ;27    Armor                          
            ;28    Shield                          
            ;29    Gem                          
            ;30    Jewelry                          
            ;31    Potion                          
            ;32    Scroll  
    
    One additional feature of Realms 5 that it will have over it's predecessors is that each player can have a companion which can be either a summoned or controlled monster or even a traveling NPC. So along with the 10 player characters that your party can have, you can have up to 10 NPC/summon companions effectively giving you a party of 20 members (though only the 10 main player characters are shown on the main screen). Realms 4 had a feature where you could control or summon a monster but this only lasted for the duration of a battle. This time, you can keep using your NPC/summon for as long as you like or until they die.

    And I also just found a music composer and a graphic artist to help me out, so I'll be able to focus my efforts on programming and designing the game.
     
    Last edited: Feb 10, 2017
    • Informative Informative x 1
    ^ Top  
  8. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    Recently I have been organizing my source code files in such a way that if the memory locations change in one .s file (that contain essential subroutines), the headers are easily updated so that they can be JMPed or JSRed from a separate .s file.

    Realms V will be an ML version of the Realms IV game system (expanded for additional races, classes, items and monsters). Since Realms IV was part ML and part BASIC, I'm revisiting the Realms III source code (100% pure ML) for re-use.

    The game world will be around the following size:

    World map - 72900 tile units
    City maps - 65536 tile units
    Dungeon maps - 12500 space units

    Total World size = 150936 units

    It's certainly quite a few steps above it's predecessors. I'd like to fit everything under 4 disk sides as well keeping the total number of files to under 288 so that it can fit on a single 3.5" floppy as well (and the D81 file can also be easily used with an emulator and SD card reader).
     
    • incline incline x 2
    ^ Top  
  9. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    If you guys want to read up on the "making of" process for this game, just head over to:

    http://sleepingelephant.com/ipw-web/bulletin/bb/viewtopic.php?f=10&t=8380

    I'm at one of my favorite parts of CRPG development: player character creation. I decided to include 32 portraits that represent the 16 races (male & female) that are shown while you roll and create your character.

    [​IMG]
     
    • Brofist Brofist x 2
    ^ Top  
  10. CryptRat Prestigious Gentleman Arcane

    CryptRat
    Joined:
    Sep 10, 2014
    Parrots:
    2,036
    A game where the player creates 10 characters is already more fun than 90% of the games out there. :incline:
     
    • Brofist Brofist x 3
    • it is a mystery it is a mystery x 1
    ^ Top  
  11. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    Here are more player character portraits in their 8 bit glory as you create your party.

    [​IMG] [​IMG] [​IMG]

    [​IMG] [​IMG] [​IMG]
     
    • Brofist Brofist x 2
    ^ Top  
  12. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    [​IMG]
     
    Last edited: Mar 2, 2017
    • incline incline x 1
    ^ Top  
  13. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    A milestone today -- I have a framework in place to program the spellcasting system. The first spelltype I programmed was the summon spell. In the following screenshots, the player casts FIND FAMILIAR to add a small animal/monster as an ally.

    [​IMG]


    [​IMG]


    With an ally, the player can use it to make attacks in it's stead during combat. In the case above, there is a 1 in 4 chance that the pseudodragon will invoke FIRE which basically autohits an entire row of monsters for 1D3 damage.
     
    • Brofist Brofist x 1
    • incline incline x 1
    ^ Top  
  14. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    I am pretty much almost finished programming the castle portion of the game. I recently just (almost) finished designing the 128*128 tile world map for the game. I originally wanted a much bigger map, but to reduce disk swapping in this retro RPG game for a retro system, I decided that the world map should be small enough to fit ubiquitously on all 4 sides of the game disks. There depth of the tile set is 27, but I compress each tile to fit into 4 bits of data (so 2 tiles per byte). Tiles #0 thru 14 are for the terrain and tile #15 represents a special unique value to represent cities, castles, graveyards, towers, caverns, etc. which are looked up into a hash table based on the position of the item on the map. So the world map file size is 8KB.

    The game is a blobber, so I am choosing to emphasize the portrait graphics of this game as well as the 3D mazes that populate it throughout rather than a big ass world map that appeared in Ultima IV and V (which did not have portrait graphics). The cities (20 of them) will be 64*64 in size as well.

    [​IMG]

    I will probably put in a few cosmetic changes, but this map is basically 99% complete for all intents and purposes.
     
    Last edited: May 8, 2017
    • Brofist Brofist x 3
    • incline incline x 1
    • Salute Salute x 1
    ^ Top  
  15. V_K Arcane

    V_K
    Joined:
    Nov 3, 2013
    Parrots:
    3,296
    Location:
    at a Nowhere near you
    That's pretty big-ass, if you ask me ;)
     
    • Brofist Brofist x 1
    • Agree Agree x 1
    ^ Top  
  16. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    When traveling, there are spells that let help your party:

    1. Light - lets you see in the dark areas of the dungeons
    2. Detect Magic - lets you see magic traps in the dungeons
    3. Invisibility - lets your party evade monster encounters while moving around
    4. Wizard's Eye - lets you see secret doors in the dungeons
    5. Find Traps - lets you see trap doors in the dungeons
    6. Protection From Evil - lets you detect the enemy before you encounter them (so you can avoid getting attacked by surprise)
    7. True Sight - basically combines light, detect magic, wizard's eye, find traps and protection from evil at the same time (everything except for invisibility)

    [​IMG]


    In the example screenshot, the player cast the Light spell (which is unnecessary when traveling outdoors, but I just wanted to test my code. The most useful spells for traveling outdoor are invisiblity and protection from evil). These spells have a time limit so their effects eventually run out.

    Realms IV didn't have these nice sexy icons (only the letter "L" appeared when you cast the light spell) so this game is getting more and more awesome as I continue to make it.
     
    Last edited: May 14, 2017
    • Brofist Brofist x 3
    ^ Top  
  17. Grauken Arcane Patron

    Grauken
    Joined:
    Mar 22, 2013
    Parrots:
    1,631
    How long will those last? I usually don't use these in a lot of RPGs, as they usually last not long enough to be worth it and feel more like busywork
     
    ^ Top  
  18. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    The Light spell for example, will last for as long as (WISDOM + PLAYER LEVEL + 1D6) * 2 non-combat movement turns. I might adjust this upwards if my playtesters feel I should increase this value. The Light spell is quite useful for the player to navigate through the magically dark portions of the dungeons and mazes.
     
    ^ Top  
  19. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    I started to create monster portraits for the combat module. Instead of posting every single picture of them here, I thought I'd provide a demo of the latest build. You can download it here:

    https://sites.google.com/site/gdbsite50 ... ects=0&d=1

    (You'll need a VIC-20 or VIC-20 emulator that runs in 32K expanded mode. You can start the demo by first loading the RQ5.BOOT file and then running it)

    If you want to see the 6 monster portraits, just assemble a party in the castle , leave the castle to the outside world map, then choose 'Move' from the menu and press 'C' to go to the combat module. From there, you can cycle through the 6 monster portraits I created so far (by again pressing the 'C' key). I only need to make another 133 to complete the game's bestiary!

    [​IMG]
     
    • Brofist Brofist x 1
    • incline incline x 1
    • Salute Salute x 1
    ^ Top  
  20. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    After finishing the first draft of 138 monster images, I started working on the combat engine a few days ago. Here is how the players' combat menu will look like, it allows for 14 unique actions (split into 2 windows, so Attack and Cast are featured in both).

    [​IMG]

    [​IMG]

    Attack - Perform a basic attack (melee or missile weapon)
    Cast - for spellcasing
    Ally - Use your Ally (NPC/Summoned/Controlled monster) to perform an action in your stead.
    Backstab - attack monster with extra damage with melee weapon but suffer an armor penalty (Thief, Bard, Courtesan, Monk, Ninja or Proteus action)
    Beckon - A Demondim can attempt to control a demon (can be performed for any combat turn)
    Defend - Instead of attacking, the player can defend.
    Lay - Once per battle, the player can "lay on hands" to heal 2 hit points per level. (Paladin or Proteus action)
    Seduce - A Courtesan can attempt to control a humanoid enemy (any combat turn)

    Sing - Bard action to distract monsters that can make them listen to the song instead of attacking.
    Turn - At the beginning of combat, Priests can attempt to destroy all of the enemy undead that are present.
    Use - Use item for it's power
    View - View character to inspect
    View Pic - I had an extra slot, so I'll allow players to view their player portraits if they want to do that.
    Whisper - Druids can attempt to control an animal enemy (any combat turn)

    While Realms V still only 2 types of spells - Wizard and Priest, there are unique powers given to specific classes to make a Druid just a little bit more different than a Sage, for example.
     
    • Brofist Brofist x 2
    • incline incline x 1
    ^ Top  
  21. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    I'm programming combat spells now. I just finished the programming for the magic missile. The following screenshots depict the player select which monster to attack and then the damage is inflicted on the selected monster.

    [​IMG]

    [​IMG]


    A lot of the code will be reused for spells that can be cast against monsters as well as for missile weapons that allow the player to select which row of monsters to attack.
     
    • Brofist Brofist x 1
    • incline incline x 1
    ^ Top  
  22. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    Made some modifications to the player combat options, with some slight changes and additional actions/powers that can be performed.

    [​IMG]

    [​IMG]

    Attack - Perform a basic attack (melee or missile weapon)
    Ally - Use your Ally (NPC/Summoned/Controlled monster) to perform an action in your stead.
    Backstab - attack monster with extra damage with melee weapon but suffer an armor penalty (Thief, Bard, Courtesan, Monk, Ninja or Proteus action)
    Beckon - A Demondim can attempt to control a demon (can be performed at the beginning of combat)
    Cast - for spellcasing
    Condemn - Monks have the power to destroy a single immortal monster at the beginning of combat.
    Defend - Instead of attacking, the player can defend.
    Disband - Sages can destroy a single row of "Misc Non-living" monsters (like Golems, Elementals, etc) at the beginning of combat.

    Lay - Once per battle, the player can "lay on hands" to heal 2 hit points per level. (Paladin or Proteus action)
    Seduce - A Courtesan can attempt to control a humanoid enemy (at the beginning of combat).
    Sing - Bard action to distract monsters that can make them listen to the song instead of attacking. (beginning of combat)
    Subdue - Lords can try to control a single Mythical monster at the beginning of combat (such as Dragons, Hydras, etc).
    Turn - At the beginning of combat, Priests can attempt to destroy all of the enemy undead that are present.
    Use - Use item for it's power
    View - View character to inspect
    Whisper - Druids can attempt to control an animal enemy (beginning of combat)
     
    • Brofist Brofist x 2
    • incline incline x 1
    ^ Top  
  23. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    I just finished programming spells that allow you to control monsters.

    [​IMG]

    [​IMG]


    10 player character slots with each allowed to have 1 NPC Ally or controlled monster = up to 20 members in your party. This must be an 8 bit CRPG record, otherwise can somebody point me to such a game that allows this feature.
     
    • Brofist Brofist x 1
    • Salute Salute x 1
    ^ Top  
  24. hitfan Developer

    hitfan
    Joined:
    May 15, 2009
    Parrots:
    234
    Here are images from the treasure looting portion of the game!

    [​IMG] [​IMG]

    [​IMG] [​IMG]

    [​IMG] [​IMG]
     
    • Brofist Brofist x 1
    • incline incline x 1
    • Salute Salute x 1
    ^ Top  
  25. KeighnMcDeath Novice

    KeighnMcDeath
    Joined:
    Nov 23, 2016
    Parrots:
    2
    And thats vic-20? ZOIKS!

    So IV was c64?

    I noticed the psytronik site offered a variety of games for systems? I take it physical copies have old school boxes and media? What about manuals?

    I suppose one could print one out. Seems anything can be done these days old school.

    Any chances you will go back to previous titles of Realms of quest and update or change to a similar style as V? I realize the first two were solo and not party mechanic.
     
    ^ Top  

(buying stuff via the above buttons helps us pay the hosting bills, thanks!)