Year: 2018

  • Update Status

    I’ve been working hard on Alternate Reality Remake.  I’m so close to having the city complete,  I think I’m really about 95% code complete on The City.   Tons of testing is required at this point.   This will allow the dungeon to move quickly since the CORE of the game is now complete.   I took assembly 30+ years ago and have not touched it since.  Digging through all the assembly code to try and get it pretty close the original game is time consuming.  I never learn 6502 assembly,  I started on PC based on Intel chips.   So now, I’m comfortable with 6502 assembly.  Having the Atari800 Win Plus emulation helped so much, having to go through all those 0x6300 and figuring out what all those memory locations mean.  Many where located over the internet and was a good starting point. Figuring out the Special Effect was the biggest help.  Seeing what effects altered what memory locations and looking up those guidebooks that tell you what each item kind of does.  That would allow me to figure out what that memory location meant.  Also,  many of the variables in monster data was not defined.  There are many of them that are bit options and not.   Digging through the code,  I’ve figured out many of the things.  Like one bit means  whena creature leaves,  instead of saying “The Bat leaves”  if the bit is on it means they “Fly”  so the wording would change to “The Bat Flies away”. 

    I think I have all the special code for each of the Monsters complete.  Devourer, Thief, Acolyte, Basilik, Champion, Flame Demon …..  There are onLoad, onSurprise, onPreAttack,onDeath special code for many of those creatures.  They appears all to be working nicely now,  of course debugging is required.  So watch out for the Devourer, it will know suck up inventory items.   Also, Thieves will attempt to steal and item from you, so watch out.   Spells casters have a special greetings if you are from an enemy guild or a friendly guild.  Example, the Ghould has a special onDeath code, where it has a chance to cast a curse on you.  Added special code for the Slime creature.

    Also, too the time to complet the Dungeons Fixed Treasure items.  They are all inside the game and complete.  I’ve not tested it to make sure the original ArX map files have the correct fix treasure in the correct spot.  But code wise, they are in there and complete.

    The Dungeon altered the monsters stats on loading the encounter.  These  changes are based on the players level and other status.  So the game gets harder as you get stronger and go up in levels.   So you should never become to strong and the game becomes to easy.   I’ve completed this code.

     The “Transaction” option in combat is not just based on attacking, but also is affected by default monster data.

     Weapons found after a battle can be cursed,  there is a small chance to have a curse.  The curse will be added if this happens.

     During battle the code is complete of being knocked down, staggered or dropping your weapon based on your strength, monster strength, stamina, luck and power of the hit.  Also, the dodge code is complete.  Also, during an attack you have a chance of being stunned and lose your chance for that round to attack.  During battle some creatures can cast spells,  this is complete.   They will cast spells based on how injured they are.  Also, if they get to injured that they have a chance of during an potion to heal themselfs.

    Weapon breaking is not in the code.  so watch out, your weapons can break.

    Now, I think I have code in place to call an active special effects everytime you or monster use an item.  Pickup, use, drop alignment check.  Alignment check is done every time you use an item.  So a good character using an evil weapon will get the alignment check during battle.

    Removed potions from source code and now loaded out of the dungeon item file. There are 53 total potions that include the city potions.

    “Offer” during combat, if it is not accepted then the offer will be located on the ground like the Dungeon.  If the encounter gives you something, it will be located on the ground.

    You can cast spells during combat.  Casting spells will cause you to lose your turn,  so if you cast a strength spell.  That is your move for the round. 

    I’ve converted many of the binary files into JSON files, the monster data, monster weapons,  dungeon items are all loaded from JSON files.  I did this because the mixing of  the City items and Dungeon items.  I didn’t want to work inside of a binary file. 

     Treasures after the encounter has changed.   When you create a character you have 2 options,  8-bit style or 16-bit style.   The 16-bit style is far more advanced in what you get from whom.   I like the 16-bit version,  once a character is created, you can not switch it.   Your character is stuck in that style.  You will not get a sword from a “Rat”, each encounter has a definition of the chance of each of the treasure items.  Then it has a random chance of zero and beween a number defined of how many items of a treasure item you get.   If the game comes up with a weapon for a treasure item. You will get the weapon of the monster used.  For instance, you have a chance of getting a potion and wands from Spellcasters but only them.

     

    • Added – Devourer pre-attack code,  the sucking up your items into his mouth.
    • Added – Thief onLoad code, this handles surprise,demand money, and stealing from player. also check if you are part of the thieves guild.
    • Added – All Fixed Treasures are now located in the Dungeon.
    • Added – Cost of buying a spell now matches the dungeons, of course are there city spells that are not in the dungeon.
    • Fixed – Fixed starting HP to be between 7-28, to make starting hp points.
    • Fixed – Transaction option.  It was just based on alignment, but the regular code is based on a few random option plus byte 21 of the monster data,  bit 5,6,7
                depending on different states.  Just because there are uninterested one time doesn’t mean for the entire combat.
    • Added – added greeting for spellcasters.  The greeting depends on if you are part of the same guild, enemy of the encounter guild. or nothing to that guild.
    • Added – random curses to weapons found.  There is a small percentage for predefined curses.
    • Added – onDeath code for the Ghoul
    • Fixed – Slime onDeath code and OnPreAttack code is now complete.
    • Added – Depending on the strength of encounter attack,  you can have a better chance of being knocked down or losing your weapon
                part of this is option is skl, stamina and luck that allow you to take the hit.  This now matches the Dungeon code.
    • Added – You dodge the blow to the attack encounter.  This is based on luck and skill values.
    • Fixed – knock down during battle,  was a complete random number.  Now matches the assembly code.
    • Added – put in the code to lose your weapon during combat.  Also, added in the stunned option during combat when an encounter attacks.
    • Fixed – Fixed code on attack, if it is a regular attack, staggered or knock down.  Not all encounters can be knocked down. There is a bit
                that tells code not possible. There is abit for staggered also,  if bit is on, then it becomes regular hit.   
    • Added – Added code to match weapon breaking. Some weapons are unbreakable.
    • Added – code for spell casters,  they have a chance to cast spells.
    • Added – some creatures will drink a potion once hp is below a certain amount, added this code to match the assembly code.
    • Added – onSurprise code for Champion.  It has a special surprise screen.
    • Added – onPreAttack code for basilisk.  It can give you a staring glance and can kill you, or you could block it with the right shield.
    • Added – onLoad code for Ronin, it is just a saying based on status bits of the of monster and how many there are.
    • Added – onPreAttack code for FlameDemon and Goblins,  can summon more flame demons.
    • Added – onLoad code for Guard changes the encounter from Palace Elite to Guard, it picks it randomly
    • Added – onLoad code for Knight changes the alignment, Partial random + 64 for new alignment even time encountered.
    • Added – put in a check for Special Effect Use Weapon.   It will now run the special effect when you use or unsuse a weapon.
    • Added – Put in a check for special Effect Drop.  Now when an item is dropped and has a special effect for drop, it will run it.
                Like,  Sword of Light.  You get Light when you use it,  and goes away when dropped.  Now this item is working.
    • Added – Put in a check for special Effect Use.  Now when an item is used and has a special effect, it will run.
    • Added – Put in check for picking up an item that has a special effect that relate to pickup.  So a curse will happen when you pickup the weapons.
    • Added – Dungeon would increase monsters lvl,hp and stats based on the players level.  That code in now in the system.  Monsters
                will not be be the same level all the time.  Once you get to be high, the game will adjust its difficulty level.
                Also, Number of monsters at one time is now reflected the of the dungeon code.  That is based on your level and area of the dungeon
                you are located to reflect the number of monsters you are fighting.
    • Fixed – Opening greetings for Thief,  if you do not yield, they will steel from you.  Arx didn’t handle time piece and compasses correctly.
                Also, thief doesn’t still from you if you belong to a thieves guild.  No check for that.
    • Fixed – Opening greetings for Knight reflects the dungeon code.  It demand you to yield and now will yield to you if condition matches
    • Fixed – Removed Potion from source code,  Nothing is hard coded anymore.  They are loaded from an external file.  All potions use the Special Effects
               as everything else to handle its ability.   One generic system for all things in the code.
                Combined the The City Potions and The Dungeon Potions together into one list of potions.  This makes 53 different kinds of potions.
    • Fixed – Figured out alignment position in monster file for encounters.  They are part of the game.
    • Added – Completed the surprise code,  now when an encounter starts up.  the surprise code will execute.
    • Added – Added ‘Cast Spell’ to encounter.  Now you can cast spells during encounters.
    • Added – Changed the way monsters data is loaded,  instead all of them creating a generic Monster class,  certain Monsters has their own class and it creates
                that class.  Ex.  Thief, Merchant, Devourer.  All have their own class.  They have methods to overload the standard “onload” encounter function.
                “offer” functions and etc.   This way the encounter routine doesn’t have to have huge if statements to do something different for this person or not.
                Encounter methods just calls the standard method and certain classes overload them.
    • Added – Completed the Offer options for all the different kinds of encounters.  If offer is not accepted then the offering will be dropped to the floor  and you can get it after the encounter.

     

     

  • Development Status Update

    I updated the Development Status log on what is completed.   I’m very close to having the city complete.  I’m working on the fighting routine, adding all the special routine each encounter may have.   Putting in all the spell casting for player and encounters, potions.  Dodging, stunned, being knocked down.

    Check out the Development Status so see what is all complete.

     

    http://www.landbeyond.net/arx/index.php/development-status

     

  • Update on Progress

    First thing first,  the position of the courier is off.  Not worried to much about that,  getting game play complete.  screen resolution can be a challenge to get everything to position correctly for all the different screen sizes.  In the game, there is 6 different screen sizes.  That is many screens to make sure all of them work correctly.

    It has been a while since I”ve update but I’ve been very busy trying to get the City complete.  There is a couple of dungeon sequence that I’ve rewritten and completed.  Going through the assembly code, there was many things missing that I put into the game. I’ve completed the Elevator, Vault Code, Fountain are all complete now.  Digging through the assembly code takes sometime but is going to allow us to be more complete to the original code.

     I’ve been working on Guilds and spells and that has taken a long time.  To me the guild is the most adverse code in the game.  The dungeon allows for only so many spells.  Based on the code, there is a minimum number of spells plus so many per level.  Arx will match the Dungeon 8-bit on this. If you try to learn a new spell and you are maxed out it will ask you which spell you wish to forget to learn the new spell.  Casting will cause you to increase your fatigue. There is now checks in the guild if you are joined that your alignment is still with in their requirements.  No more being good and joining a guil and turning evil.  They will give you warnings and then kick you out.  This matches the Dungeon.  If they kick you out, and it is your main guild, you will lose your items in your locker.  So please watch out.  Spells only have so many uses and will be depleted and will need to be relearned again to use.  Learning a spell is not a set percentage increase for each time you practice a spell.  Each spell has its own increase rate and will increase each session  based on its settings.

    The other option is there were no spells in the 8-bit game but was in the 16-bit version.  So I combined the dungeon 8-bit and the 16-bit City into one list of spells.

    If you become drunk you can now pass out like the city.

    Created 16 bit dungeon screens that are missing,  many other screens still missing and need to be created.   Screens like stairs leading up/down now have  a 16 bit version.  Also, Ozob screen is also created for 16bit mode.

    Update save routine to be more advanced.  It will save the entire game in a state.  This way, when you restart the weather start up right where it left out. all events that were going continue where they left off.  Trying to prevent anything system restarting from scratch. Changed startup routine to handle game loaded from save file vs. starting a new game.  Skip routine that initialize different parts of the system. Also, changed all classes talk to each other.  I created an event system that class subscribe if they want the update on an event.  So, like time update, a class can subscribe and get an update when time changes.  This way, classes do not need to know anything about each other.

    Added the ability to select 16-bit experience point rewards vs. 8-bit,  Added the ability to select 16-bit healer options bs. 8-bit on character creation screen.  Once a character is created, then from that point forward, you are force to use that type of game option.   No switching back to the other style after creating your character.  This menu option is selected when creating a character.  This affects normal game and challenge mode.

     

    Changed eating and drinking to match the dungeon.  Once your stomach is so full it doesn’t allow you to eat/drink anymore but it wastes the drink/food.  Put in the sayings to indicate your to full that matches the dungeon.  Also, I added  speed penalty for hunger.  Found that was an option digging through dungeon items special effect debuging them.  I think I got about 90% of all the memory at location 63xx for the 8-bit dungeon.  The iternet and many many website got about 20% complete.  The code and description of items told me the rest.  Like having an item that rests your fatigue.  But the code changes 8 variables,  you know all those variables are related to fatigue.  The would be like in the middle of str value, wisdom value.  The game appears that it keeps those values  and update the show status based on max and all the penatlies.  There are still a few variables I”m not sure what they are used for, can see the code referncing them and altering them throuhout the game.  I’m not an assembler coded,  who write in assembler anymore.  That is a dieing language, we just make computers faster and faster so the worry about speed in software or size is not needed anymore.  I love how small old games where and what they did with that space, and now just to run a piece of code that says “hi” to the command line is larger then 64k.

    BIG CHANGE —

    Game Difficulty has been added to the game.  When you start the game, you select which difficulty you wish to play under.  There are 3 options.  “Easy”,”Normal”,”Hard”.  “Normal” is exactly like the 8-bit city/dungeon play.   “Easy” and “Hard” mode will modify many areas of the game to make it easier or harder.   More/less encounters,  damaged, cost of items, guild cost and many more areas are effected.   Once a character is created in that difficulty there is no way to alter the difficulty settings.  You can’t switch back and forward.

    Added a challenge mode to the game.  This prevents you from saving the game.  You play until you die.  See how long you survive.  Game difficulty is in this also.   See how long you last without saving in Hard mode.   Also, during challenge mode, it displays in the lower left corner you are playing challenge mode and displays how long the character has survived in hours, days, months and years.  When you die, it save a screen shot of the game,  so you have proof how long you played and you can see the stats of your player.  Also, it keeps track of many things about the game and has a high score for each difficulty mode. It keeps the top 20 scores.  This way you can see what you have done.  It keeps track of kills, day survived, charms/tricks and runs/flee, jobs taken, guilds joined and many other items.  You can see your results from the main screen and sort them by many different fields.  I love this feature, it is pretty challenging.

    Challenge Mode has an achievement side scrolling popup window during the play.  So each day you survive, then a popup shows how you are during.  There are many popups that happen during the play.

     

    Test script —-

    I created a test script to  create a release copy of the game so it can be released. I’ve getting close to having The City complete and when I do I’m going to release the City version.  The dungeon to me is only about 30-40% complete and many of the screens are not fully complete to the original code.

    I have to give MANY MANY thanks to acrin for starting the C++ code and Jduerstock on github, who took the time to convert many of the sequences into readable 6502 assembly.  There are some pointer issue and missing items that I’ve corrected as I downloaded his code.  When doing a dungeon sequence, I go through the assembly code and verify all the aspects that need to be in the game and code them.  But in the end this is not an emulation, or copy of the game.  This is a COMPLETE NEW rewrite of the game, some aspects are based on game play, some are based on techinical notes of what people have located and some are on disassembly of the original code.  But all code is NEW and unique. 

     

     

     

     

    • Added – Going through the assembly code, the alignment check per guild is not just main guild.  It is any guild you are part of.  I originally coded it to check based on the main guild only.
    • Added – Speed penalty for hunger.  Found that was an option digging through dungeon items special effect debugding them.
    • Added – Add changes to fountain. Dungeon wouldn’t let you drink if you are bloated.  Put in that check If you drink when you are max out hp,  different kind of saying.  Also, each type of healing from the 3 different fountains
      have a random number for the sayings.   
      The fountain is complete and should match the dungeon code completely.
    • Added – Changed eating and drinking to match the dungeon.  Once your stomach is so full it doesn’t allow you to eat/drink anymore but it wastes the drink/food.  Put in the sayings to indicate your to full that matches the dungeon.
    • Added – Started testing the dungeon item, one by to make sure they work like they are suppose to with full effects,  everything appears to be going good.
    • Added – Change code so it works outside of the development package.  Created a script file to generating the jar files and copying all files over.
      Removed sounds and images from the jar file.  The data and binaries files load from the jar file, while the images/songs load from a file from a directory
      Wanted to limit the size of the jar file.
    • Added – Challenge Mode – Has a sliding banner to let you know status as you play.
    • Added – Added the ability to select 16-bit experience point rewards vs. 8-bit
    • Added the ability to select 16-bit healer options vs. 8-bit
      Once a character is created, then from that point forward, you are force to use that type of game option.
      No switching back to the other style after creating your character.  This menu option is selected when creating a character.  This affects normal game and challenge mode.
    • Added – Game Difficulty has been added to the game.  When you start the game, you select which difficulty you wish to play under.  There are 3 options.
      “Easy”,”Normal”,”Hard”.  “Normal” is exactly like the 8-bit city/dungeon play.   “Easy” and “Hard” mode will modify many areas of the game to make it  easier or harder.   More/less encounters,  damaged, cost of items, guild cost and many more areas are effected.   Once a character is created in that difficulty there is no way to alter the difficulty settings.  You can’t switch back and forward.
    • Added – Added a challenge mode to the game.  This prevents you have saving the game.  You play until you die.  See how long you last.  Game difficulty is in this also.
      See how long you last without saving in Hard mode.   Also, during challenge mode, it displays in the lower left corner you are playing challenge mode and displays how long the character has survived in hours, days, months and years.  When you die, it save a screen shot of the game,  so you have proof how long you played and you can see the stats of your player.         
    • Added – Changed world time update to be based on events instead of hard coding all the different places that need to know the changes.  Now you subscribe  to the TimeEvent  and every minute, 15 mins, hour or day.  All the listeners to this event will be called.  This way,  The world timer doesn’t need to know   everything about all the different events.  It can be handled generically.  You just subscribe and you will get a call when it happens.
    • Added – Update save routine to be more advanced.  It will save the entire game in a state.  This way, when you restart the weather start up right where it left out.    all events that were going continue where they left off.  Trying to prevent anything system restarting from scratch.  Changed startup routine to handle game loaded from save file vs. starting a new game.  Skip routine that initialize different parts of the system.
    • Added – Added a Event Manager system.  This class handles and controls all events.  When an event start, it registers with this system.  This manager will update  events as needed, like weather, world time and etc.
    • Added – Created 1 bit dungeon screens that are missing,  many other screens still missing and need to be created.   Screens like stairs leading up/down now have  a 16ibt version.  Also, Ozob screen is also created for 16bit mode.
    • Added – Combined the Dungeon spells with the 16-bit City spells.  Removed duplicate spells.  Since they are two systems,  I store the format into a json format that has both combined.  The data is still the original 8-bit dungeon and the city is recreated into 8-bit dungeon format.                           
    •  Added – If you become very drunk, you can pass out.
    • Added – Random turning implement for being drunk.  When you become tipsy, the console panel at the bottom of the screen will display random screens.
    • Added – All closed stores now say closed and will not let you in them.
    • Added – Combined City Spells with the Dungeon spells to be one set of spells.
    • Added – Learning a spell is not a set percentage increase for each time you practice a spell.  Each spell has its difficulty and will increase each session based on its difficulty.
    • Added – Spells only have so many uses and will be depleted and will need to be relearned again to use.
    • Added – Warning if you kill members of the same guild,  After so many warnings then your membership is revoked. Your ring is lost.      Watch out, you will lose everything in your locker.
    • Added – Warning if your become to good/evil for the guild,  after you become to much of one or the other your membership will be revoked and your ring taken.
      Watch out, you will lose everything in your locker.
    • Added – Casting Spells will increase your fatigue based on how much the spell takes out of you to cast.
    • Added – Change number of spells a player can learn at one time to match the Dungeon,  Dungeon was based on a min. but then added more for each level the character  is. If you try to learn a new spell and you are at max, it will ask you which spell to get rid of.
    • Added – Completed the Vault Code.  Changed code entirely.  Also, made it reflect the Dungeon code.  Time to guard locating you is based on the dungeon time.  
      Also, if you get dragged out vs. escorted is based on alignment (dungeon code).  Also,  if caught you go directly into encounter mode with the guards.
    • Added – Complete the code for the Elevator in the game.
    • Added – Change weapon selection for Monster to be the same as the Dungeon.
  • Quick Update – Event Manager

    I’ve changed how the event Manager works.  It now runs on its own Thread.  So the game uses multiple threads now.  Event Manager handles,  all events like  Spells, Potions, World Time and etc…. 

    It will start when the game starts and updates every Game Minute.  It keeps a list of all events that is running and updates any of them if their time has experied.  World Time, weather and such run independent of the game loop.  It runs based on the general idea of every 4.8 seconds is a minute in the game.  So unless the game is paused, the event manager will be updating all these events.

  • Snow Update

    [video:youtube:kWZj2Mfa6PY]

     

    I’ve changed the snow to be a texture picture instead of drawing it on the screen.  I think it came out pretty good for emulating 16-bit feel.   Check it out.

  • Guild Updates

    I’ve been working on getting guilds completed to be more like the Dungeon.  Many features are missing from ARX guilds.  Only the basics are in the game right now.   So guilds do not accept you automatically.  Some days they do not accept new people and you have to come back the next day and check.  Also,  if your alignment changes and moves outside of what is acceptable by the guild, then you can be ejected from the guild. So if you join a good guild and start to turn evil, they will give you warnings like the Dungeon and then will kick you out as you get outside of the alignment requirement.   I think that is a good feature,  being good and getting into a guild and then turning evil shouldn’t be accepted.  I like the Dungeon thought of this,  so now it is part of the game.  If that guild is you main guild, then when they kick you out then you lose everything in your locker.  So watch it.  If you show up and you alignment is way out of wack then they might not give you a warning and just kick you out.  So watch it.

    The other new feature of about guilds is you end up killing people from that guild.  You will get a warning and then kicked out if you continue it.  If you get kicked out, then they will attack you.  Also, you will lose your locker if that is the main guild.  So watch it.  The city didn’t have these features but they are now part of it,  even listing the wizard is from a certain guild.  So watch it.

    Next thing is huge and has been taking most of my time when I have it.  It is spells.  I completely rewrote the spells section because it was not even close to be completed.   First step was that I load in the spells from the original Dungeon Binary.  The city didn’t have spells but the 16bit city did.  So I created those spells into the dungeon spell binary, so all spells are loaded from the binary.

    I have to say, I love how spells, potions and special items work in the game.  It is a great design and very very efficient.  Unlike how we code today, it was very tight and generic.  I love it.  So I took that idea and recreated it in ARX game.  All spells, potions and special items use this “Special Effect” class inside ARX.  These special effects define things like timer, when it becomes active,  how many time to loop through the timer,  an area of telling the game what memory locations to add/sub or other options on how to effect the memory location.  These memory locations, can be player related, encounter and/or area related.   I’ve mapped all the memory location to an ARX option.   There are a few spells that are special that have special code related to them.  Those are the only one left to re-create in ARX.   It took many many days to get all the memory locations mapped out.  There are many websites that talk about memory location, but are far from being completed.  I’ve got all of them except one memory location mapped out and two spells call that location and I can’t figure out what that is related to.

    My favorite is 0x6320  for the dungeon.  Normally you will see 0xff (255).  This field mean the active encounter which you are battling.  So trying setting it to 0x00 and see what happens.    This way you can test fighting every single encounter in the game.  Want to fight againt the “Long arm of the Law” F.B.I agent.  You can at anytime.  They are around 0x06,  I don’t remember its number. 

    So I’m making changes to the game to match the Dungeon.  Like certain areas where the spell “Location” will not work.  So for this, I’m preventing the “Auto Map” feature to work during these areas also.  So you can’t cheat and get through the maze area easily.   I’m trying to make sure the hardness of the original is in the remake.

    Of course the remake is a remake and is not an emulation, so it will be different from the original.  Acrin1  did such a great start on the game and allowed me to pick it up to complete the game.  I don’t think I would have started from scratch to create Alternate Reality.  I saw the bases was there,  I couldn’t let it go.  I wanted to see the city/dungeon completed. 

    Also, when it comes to the dungeon, there are many screens missing from the 16-bit.  So I’ve been busy taking the 8-bit screen and converting them to appear to be 16-bit so you get the same look and feel.  When I’m done, there will be a 16bit graphics for each and every thing the 8-bit had.  I don’t want someone to play 16-bit city and then when they go to the dungeon to be swapped back to 8bit graphics for most of it.  I’m going to complete the 16bit graphics conversions.

    I’m also, adding new features into the 16-bit graphics.  There can be animation in the 16-bit screens.  I’ve taken the time to allow any texture in the game to have animation.  So when it calls an texture to render then texture will determine what texture to render, to end up creating the animation effect.  

    I don’t want to do much inside OpenGl for animation.  I want to make sure the look and feel ends up being 8bit or 16bit and not a game with todays physics, lighting and animation with 8bit or 16bit graphics.  I want the feel to be authentic to the version you selected.  So the animation is based on what was used back in those days.

    Once the spells are complete, it will be easy to allow the items to use the “Special Effects” without any code changes to turn that feature on.  I still have to get alignment check in the game for picking up items so a good player can’t easily use an evil item or the reverse.

    This is just a quick update on what I’ve been doing.

     

     

     

  • Alternate Reality X 0.83.5

    This is version 0.83.5.   This is just a quick fix to fix the ability to save your game.

    If bugs are reported, then I will look at fixing them.  If the bug is related to unfinished code, then nothing will be completed until the city is completed.

     

    You can download the release here.

    Version 0.83.5 – 15th Apr 2018
    —————————-

    • * Fixed –  Missing saves directory in the zip file.

     

    Version 0.83.4 – 25th Feb 2018
    —————————-

    • * Fixed –  Missing Ini file in the zip file.

    Version 0.83.3 – 13th Feb 2018
    —————————-

    • * Fixed – Graphics mode Alternate would cause a crash on start.

    Version 0.83.1 and .2 – 13th Feb 2018
    —————————-

    • * Fixed – Game crashed when entering the city
    • * Fixed – New Character Immobilized, clothing caused this when inserted into inventory.

    Version 0.83 – 4th Jan 2018
    —————————-

    • * Fixed – Hours in certain Inns wrapped over to the next day and you where not able to enter that inn.
    • * Fixed – Player position on automap being off by one.
    • * Added – A timeout option during fight, opponent will not do something instead of waiting forever.  
                If player leaves,  it will timeout after 20secs and clear the screen.
                No more locking up the games in waiting for keyboard inputs.
    • * Added – when you try to flee an encounter there is a chance it doesn’t work.
    • * Added – Added 16bit graphics to the graphics Mode
    • * Added – When you charm,trick or attack certain opponents, causes alignment decrease
    • * Added – Ghost attach can now be the “Bone-Chilling” attack.  Certain percentage. Reduced STR by one if was successful.
    • * Added – 2 new diseases.  Mold and fungus from MOLD, slime.  Slime will foul your food once it becomes active.  These takes 48hrs before they become active.    
    • * Added – Sun set and sun rise to 16bit graphics.  It is not done by still graphics. Drawn on the screen based on time.  that way it moves like a real sun.
    • * Fixed – Ghost information was not correct on armour.  He is suppose to be invulnerable to blunt, sharp weapons.
                you need magical weapons for the most part.  Fixed that.
    • * Fixed    – put back in the weapon selection for opponent when they attack.  Many opponents have different attacks was hard coded to just the first weapon.
    • * Fixed – Armour ability to handle different weapons is back into the system.  If using a blunt weapon and the armour is invulnerable to blunt.  You will not be able to do any damages with that kind of weapon.
    • * Fixed – Certain armour is vulnerable to certain weapons, and these weapons cause double damage.
    • * Added – Added in 3 missing encounters from binary, Cutthroat, Brigand, Master Thief
    • * Added – Put these encounters into possible city/dungeon encounters.
    • * Added – capture the number of encounters variable from binary.  When in the dungeon you can have multiple encounters now, up to the max defined in binary.  City still is only allowed 1
                encounter at a time.  The number of encounter is affected by your level, dungeon level. your alignment
                vs. encounters alignment  will increase or decrease your chances for more monsters at once.
    • * Added – Started loading in attributes for weapons. Its loads in weapons that causes curses and dieseases.
    •           Not active in the code yet. Have not loaded the weapon attributes values into the system yet.  Like, How long it last.
    • * Adjust- Adjusted the Treasure finding stats.  Potion should only be in affect until you find treasure and then it should go away.  In the code, the treasure just kept getting higher.
                Adjust treasure.  You got a weapon on almost every encounter.  The original game was not like this.  It was much hard to get weapons.  The chances for finding a weapon is much higher now.
    • * Adjust- Treasure Torch and Keys will not show up in the city anymore.  The city didn’t have these items.
    •           You end up with so many of these items you never have to want for this.          
    • * Added – When you find a potion you get 120xp points like the city gave you.
                You get 255xp for each Jewels,  128xp for each Gems
    • * Fixed – Fixed Weapon damage.   It was calculating weapon damaged wrong.  Way to high.
                It was doing a bit check for number of dice and number of sides to the dice.
                This was not correct. a Value of 36 would be 3 dice and 6 sides.  bit check would turn this into      a different value.

                        
    Notes:
        Graphics Mode is now  
            0 – 8bit,
            1 – 16bit (Amiga),
            2 – Alternate Small,
            3 – Alternate Large                
        16bit Amiga has a sunset.  Added sun to the game.  You can see the run rise and
        set.

    * Charm,Trick, Attack – on certain good characters causes your alignment to decrease.
         first time cause a huge decrease before good no matter what your score was.  Once below
         good, then each act causes it to go down a bit.

  • City and Dungeon Update

    Its been a bit since my last update,  been busy and this is what has been completed since last update.   Moving data around so Player doesn’t keep track of everything like guilds, tavern data and such.  Player only has player related data now.  Other data has been move into the correct class they are related to.  Did some tweaking of the different window sizes to make them more correct on scaling for the different sizes. Got mip mapping in Java working now.  So little to no flickering in the distance anymore. Added code to limits frames to 60 fps.  This way no matter what the game is played on it moves at the same pace.

    All jobs in the game can now randomly generate wounds during working.  It will be displayed at the end if you received a wound during working.  Guild now do not automatically accept you,  it is based on a percentage this was in the original 8-bit City and 16-bit City.  I liked that, so I put that in.  Each Guild has a different percentage for accepting new people that day.  If they are not accepting, check again tomorrow.  Guilds can remove curses and disease even if you are not joined.  They just do it for a cost.

    All shops in the city are now real time,  sitting in the place, time move forward.  Also in any of the City shops you have hit the F1-F8 or the ‘<‘ and ‘>’ key to move forward through those menus.  Menu 0 is the main menu and that is the menu the shop menu will show up if you do this inside the shop.  You can flip through any of those menus now.

    Added a new feature for the smithy sound when outside the shop.  The sound level fades depending on how far away you are from the shop.  This way you can tell if you are getting closer or further from the shop. Smithy shops are complete with friendship levels.  Has effect of friendship, saying,  barter system.  You can raise or lower you barter system.   Friendship changes if its been a long time since last visit,  will get kicked out if drunk. Going in to the shop drunk will lower your friendship.  Get that friendship up and you get a weapon at a better price.

    [image:23]Next one is a big one.  I told myself to work on the City first and move to the Dungeon once completed.  I screwed that up and loaded the Dungeon, that cause 3 days of coding to get many items working and completed.  So I never loaded the dungeon once I converted it to Java.  So I decided to load it and have finding the endless loop,  it worked like a champ.  So, it made me notice how far from complete the Dungeon really was.  So first step was add in the ability for the torch to function and for areas in the dungeon you need a torch were working.  So I added the dark area.  Now you can light a torch and see inside the dark area.

    [image:24]It also looks great.  Dark areas get darker based on the distance from you, light source,  even the 8-bit does this.  You can’t see as far as you can in the well light area.  The lighting is done in a generic 16-bit style.  The shading is based on x,y locations.  I think that fits the game very fell.

    Next step was I love the 16-bit graphics and there are some sequence and shop images but no wall images.  So I took the time to create several of the 16-bit dungeon wall images based on the 16-bit city game.  Many of the I just had to hand draw to make them work.  I think they came out pretty good.  They have the dungeon feel and look like the 16-bit version.

    Next step was how imcomplete the fixed treasures in the dungeon where in the C++ version.  But I understand now.  Only items in the game where basically the items from the monster binary file.  I completed the code to load in the Dungeon Items from the original binary file from the Dungeon.  This was need for all those fixed treasure and Quest items.  This took a day and an half to get the loading down to the 8-bit format.  Many different structures for the different items.  The longest section was getting all those Special Effects loaded.  Weapons, Potions and Card and etc….   Many items have special effect and several of them can load up with 3 and 4 effects at a time.  I have the load code complete to load in every aspect of the items.  This way all the items can be completed correctly.   I still have a few areas where the special effect will not work.  The effects tell you which byte to adjust and how to adjust them.  Many of those bytes are undocumented,  I figured several out by my self.  Like if you blow the “Gold Horn” adjust byte 0x6320 in the dungeon.  This value had all kinds of comments over the internet on what they though it might be.  I figured it out and love this one.   Setting this variable forces an encounter depending on the value.  So now I can test encounters with anyone I wish by adjusting this value.  Only problem is the encounter in ARX is off from the Dungeon.  Because ARX doesn’t load all the monsters from the original monster binary file.  It skips about 6-10 monsters, so this caused the index to get off between the two system.  Have to work on that.  But I can fight the FBI anytime I wish now.  There are several bytes not documented and was unable to deteremine what effect in the game they have.  Still working on those.  

    Loading of the Dungeon Items was needed to complete the Dungeon.  Was not going to hard code all those items into the game.  Like the couple of Quest items ARX has right now.  They are not real items and the name is just hard coded to be an item inventory.   I’ve removed all this because now you just tell it to put an item in the players inventory.

    I started adding in the fixed treasure location throughout the game.  Just taking a bit of time but easy enough to do.  As I’m just teleporting in the 8-bit dungeon game by adjust the x,y and level bytes to put me in a new location a to verify ARX plays just like the 8-bit did.  It works out well, except that as in the City the entire 64×64 was loaded into the game. While Dungeon level 1 is pieced into 4 sections, I assume that was the reason for the teleports, it can cause a load sequence to get the next section loaded.  So I have to get into that section and then I can teleport anywhere I want.

     

    [image:25]Quest One
      Quest One was not in ARX,  So I’ve added the first half of the sequence with Ozob and the prison.  The first half of Quest One is complete and working in the game. I’ve changed the sequence just a bit from the original.  See if you notice it, it doesn’t affect game play or how you can play.  But I thought the slight change was great addition.

     

     

     

    • Added – Load all items from the original Dungeon Item binary file.  This is need for all the missing items.  Only items really in the game where the items of the monsters.
              nothing else was in the game.  
    • Added – Ozob, Acrinimiril prison sequence is complete.  Getting key, releasing the prisoner and teleporting complete.
                Quest One Part 1, Last part of quest one if to find tomb and getting new item is left to do.
    • Added – All shops inside the City run in real time.  Time moves forward just sitting there.
                The Tavern, Bank, Inn, Shop and Smithy are not complete with friendship system, jobs, and menu systems.
    • Added – Smithy shop is complete now.  Has effect of friendship, saying,  barter system.  You can raise or lower you barter system.
                Friendship changes if its been a long time since last visit,  will get kicked out if drunk. Going in to the shop drunk will
                lower your friendship.  Get that friendship up and you get a weapon at a better price.
    • Fixed – Smithy sound adjustment.   The sound level is adjusted depending on how close you are away from the shop.
                It was hard coded to certain squares to play the smithy sound.  Now the game checks to see if a smithy shop is when a certain
                distance of your location and then plays the sound.  it adjust the sound level depending of the distance.
    • Added – Added the alter menu to work in shop, taverns adn etc….  This way tipsy and drunk can put up random screen and make it hard to navigate.
                 Also, you can check your equipment, gold and such in a shop.
    • Added – Added cost to remove curse when you are not joined with the guild. The guild will still remove curses but for a cost.
    • Added – Guild percentage for acceptance has been updated.   Even the original 8bit city didn’t automatically accept new members.
                Now all guilds will be accepting or not, if not check back the next day.
    • Added – Jobs now in Tavern can randomly generate a wound.  All jobs in the city can cause injury during work.
    • Added – Frame limit to 60fps.
    • Added – Mip Mappings is functional now.  The flicker is gone.
    • Fixed – Tweaking the different window sizes layout.  Getting them to be more perfect in positioning.
    • Added – Pulled out all the of on player data out of the player class and put them into the correct class they are related to.
  • Quick Update – 8-bit graphics

    [video:youtube:IBiU46UjT1s]

    I’ve been working on the Atari 8-bit graphics when it comes to the city.  I’ve completed completely over hauling the background system.  No more multiple images for the background images.  There are only 4 textures,  one for each moutain.  Also,  The original 8-bit game has animation on the southern mountain with a river.   I’ve added that part to the game.  Looks good.   Also,  added the sun rise and sun set effects from the original 8-bit game.   I’ve completed the rain effect in the 8-bit version of the game.  Like the other systems, the rain intensity is based on the weather condition.  I”m not completely happy with the look.  It feels different from the original.  Not sure how much more I’m putting into it.  But the weather system for the 8-bit and 16-bit are completey now.  Feels so much more like the original game.   The game is coming together.

     

    • Added – 8bit style.  If you become very thirsty and you have water packets. The player automatically drink the water.  This is the new style.
    • Added – 8bit river.   The 8 bit bit river animation has been added to the game when viewing the mountains in the south.
    • Added – 8bit sun.   Sunrise and Sunset is now implemented in the 8bit version.
    • Added – 8bit rain.  The rain for all system of system is in the game.  They are in their own class,  At start of game it determines the graphics  defined and creates the correct class for that type.
  • Quick Update – Lightning effect for 16-bit

    [video:youtube:8nY3xKXKfbk]

    I’ve implement the 16-bit lightning effect and got it into the game.  It looks good.  I actually like it, like the little flashes that it creates during the duration of the lightning.  Also, implement the 8-bit rain effect and it is working great.  Even though it doesn’t have the exact feel of the 8-bit.   I’m not sure if I’ll continue tweaking it to be 100% like it.

    When it comes to the weather the 16-bit and alternate has a new feature that the 8-bit will not have.  If the weather indicates it is freezing and it calls for rain,  it will render SNOW instead.  Snow intensy is based on the storm intensity.  So it could fall light to heavy based on the degree of the storm.  During a SNOW STORM, the sun effect during the 16-bit version, will not be drawn.  

    Also,  implement the timer event for the game.  This way can start to implement timed events for potions.  Really implement deseases and curses correctly.

    Torches work on the timed events.  Also, they work in The City.  It will light the area for a timed event.  Then the torch becomes a dead torch.  Which at this point it is just a stick as a weapon.

     

     

    • Added – Timed events started.  Works with Torches.  Torches has a duration now.  Will burn out and become useless. Can be used as a weapon but just like a stick.  a blunt weak weapon.  This is the start of events for potions/magic.
                Now I can give potion timed event.  do not like items structure.  It is way to hard coded and limiting.  Like a torch the type is a weapon.  There is no way to determine what kind of weapon it is.  I want to change this but it is not important at this time. 
    • Added – You can use torches in the city now.  At night the city can get dark and its hard to see in the distance.  If you use a torch, it will provide light for a period of time
    • Added – 16-bit Amiga –  It now has snow.  If the temperature is below freezing, and the game calls for rain.  It will display snow instead how much it snows is based on how big of a storm it is.  Also, during a snow storm, the sun doesn’t show. 8bit it only rains, no matter how cold it is.  The game didn’t have that feature.
    • Fixed – Fixed the thunder sound.  It can choice between short vs. long thunder sound and will repeat based on how frequent it calls for it.         
    • Added – Experience points are rewarded differently between charm/trick  vs. death from fighting.  Your experience points for charming is different from the attack.
    • Added – Started to add in “Game Options”.  The ability to select 16-bit Guilds   vs. 8-bit Guilds.
                Started to add the ability to select 16-bit experience point rewards vs. 8-bit
                Started to add the abillity to select 16-bit healer options bs. 8-bit
                Once a character is created, then from that point forward, you are force to use that type of game option.
                No switching back to the other style after creating your character.
                
                Right now missing menu option during creation to select which style you wish to use. Its hard coded to a certain one right now