Jump to content
IGNORED

'Immunity' homebrew WIP


Sohl

Recommended Posts

2 minutes ago, Sohl said:

I'm on the 10th day of symptoms, which are "mild" I guess as far as these things go, but the yo-yo fevers, chills, and headaches are not very conducive to 2600 development.  I had saved up some vacation days for the end of the year and hoped to use many of them as a 2600 development sprint, but that plan is mostly falling apart.  If you are the praying/spiritual type, I'd appreciate any prayers or good vibes on my behalf!  I really hope I'm starting to turn the corner a bit and will get productive again soon.

Oh no! Very sorry to hear this Mike, I hope you recovery quickly to enjoy the holidays and your planned time off. Keep us updated!

 

- James

  • Like 1
Link to comment
Share on other sites

8 minutes ago, Sohl said:

BUT...  in a cruel twist of irony, the inspiration of the game has become very real for me. :woozy: I'm on the 10th day of symptoms, which are "mild" I guess as far as these things go, but the yo-yo fevers, chills, and headaches are not very conducive to 2600 development.  I had saved up some vacation days for the end of the year and hoped to use many of them as a 2600 development sprint, but that plan is mostly falling apart.  If you are the praying/spiritual type, I'd appreciate any prayers or good vibes on my behalf!  I really hope I'm starting to turn the corner a bit and will get productive again soon.

Sorry to hear that. If you are vaccinated, don't worry too much. 

 

Best wishes!

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

Made some decent progress on the intra-cellular playmode.  I am having some trouble capturing it as video, so I will just describe the current playmode and attach a few screenshots

 

Basic Idea:

 

You control the "free ribosome" that can shoot sideways back and forth through the cell.  It can collect "Vitamin" molecules (which look like a 'V'), that allow it it to kill viral RNA and new Virus copies without loosing energy or health.  The "Energy" molecules (looking a bit like an 'E') need to be bumped into the mitochondria at the sides of the playfield for the energy to be absorbed.  When there is more energy, the free ribosome will shoot faster.  If there is only minimal energy, it cannot kill a new virus attempting to escape (it will just bounce off).  If the ribosome has at least an energy of level 1, hitting a free virus will kill it and leave behind some loose spike proteins that can be collected to build antibodies (useful in the other phase of the game).  You can also hit the g viral RNA and attempt to neutralize it before it implants on the endoplasmic reticulum, where it can grow new virus copies.  Viral RNA will expire after growing several virus copies, but new viral RNA will inject to take its place.  After an infection round of several RNA strands, once there are no more live RNA or free viruses, the play will switch back to the external cell mode, but if new viruses escaped, the total viral load will be higher!  Hopefully you built up some extra antibodies.

 

There is a trick to bump the outer cell membrane with the free ribosome by moving up toward it and hitting fire at the right time.  If successful, it can shake some spike proteins from the externally-latched viruses that can be collected to build new antibodies (but this feature seems to be bit buggy right now)

 

Your vitamin and energy levels are shown in the low part of the screen as playfield rectangles.  I hope to have a more iconic way to represent this in the future.

 

 

imm_17.png

imm_16.png

imm_15.png

imm_14.png

imm_13.png

imm_12.png

imm_11.png

imm_10.png

  • Like 3
Link to comment
Share on other sites

Not sure why I had so much trouble yesterday capturing my Stella session to video, but I got it working today!  Here's a link to a clip on Odysee.  My shooting accuracy is terrible in this captured session, especially in the first 30 seconds or so, but you can see energy getting bumped into a mitochondria at about 0:35.   Anyway, all the main features of the Intracellular playmode do get demonstrated.  It's still a bit buggy and I hope to refine it quite a bit but at least you can get a better idea of what this will be like to play.

 

https://odysee.com/@Sohl:0/Immunity_Work_In_Progress_Intracellular_Playmode:8?r=2dG4SJwawMXaxH94dXASdt5jRERjyQyJ

 

 

 

Edited by Sohl
  • Like 1
Link to comment
Share on other sites

16 hours ago, Sohl said:

After a bit more testing, I'm deciding to release the "Dec. 31" version of Immunity demo today.  It will have a few bugs and some unbalanced aspects of the gameplay, but I hope you enjoy the new features and provide some feedback!

immunity_2021_Dec_31.bin 16 kB · 3 downloads

Thanks Mike, I will update the Atari 2600 2021 release listing with this as an updated WIP as you did send this exact binary to me before midnight last night.

 

- James

  • Like 1
Link to comment
Share on other sites

ZeroPage Homebrew is playing Immunity on tomorrow's stream LIVE on Twitch, hope you can join us!


Games:

 (WATCH AT 1080P60 FOR FULL QUALITY)

 

 

  • Like 1
Link to comment
Share on other sites

2 hours ago, ZeroPage Homebrew said:

ZeroPage Homebrew is playing Immunity on tomorrow's stream LIVE on Twitch, hope you can join us!


Games:

1227532145_20220104-LetsPlay.thumb.jpg.b31a28f2fe9461e1b3b8320712f6e48f.jpg

Wow, I better be there!

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Development update: I've been working away to refine Immunity, squashing many bugs and issues that were apparent in the recent ZPH play-through (thanks @ZeroPage Homebrew James and Tanya!) or to me though my own testing.  For now, the changes have barely impacted the visual appearance of the game, but I've fixed/changed/improved:

  • Several scanline issues: fixed
  • The sometimes weird movement of the infection objects: fixed/avoided
  • The "can't shoot" issue in the Intracellular screen when the ribosome is up by the cell membrane (there was a controls conflict with the "bump" action... should be much better now.  I'm motivated to get this right after I noticed during the most recent ZPH show that controls got the most votes for the most important game attribute!): refined
  • Screen/mode flipping back and forth between the 'Intracellular' screen and 'Exocellular' screen at more frequent but appropriate times: refined
  • Missing sound effects for some events: fixed/added
  • Limits on collecting some of the "power-up" objects: added
  • Background colors a bit darker in a few cases so play objects contrast against them better: refined
  • Changes to the initial state values and screen-to-screen re-initialization to work better in the dual-mode back-and-forth play sequence: begun refinements
  • Health score bonus after clearing a tissue in the Exocellular screen was not added correctly: fixed
  • and much, much more!

To-do before the next playable demo:

  • Implement difficulty setting* in the gameplay of the Intracellular play mode and adjust it a bit in the Exocellular mode as well
  • Complete the most critical changes to the initial game state values and screen-to-screen re-initialization
  • Fix kernel visual glitch on Intracellular free virus (color of first sprite row(s?) not correct) when at top near cell membrane 
  • One more sound effect?

I don't think the to-do list will take very long.  With luck tomorrow I can get the next demo ready and released!  (I have a work holiday for my day-job :party:)

 

Longer term, I'm thinking about:

  • Continued refinements of state initializations, limits, scoring, etc. to have a well-balanced game in terms of challenge/reward/fun
  • Summary screens as intermissions between the play screens, showing your incremental change of state (e.g. how many antibodies you gained, and how many new viruses escaped)
  • Two player mode(s?) with couch-compatible game selection
    (Earlier in this thread I brainstormed several varieties of two-player modes... some of those may be too ambitious for the size of cart I want to make and my available dev time...I don't want this game to take forever!.. So for now, any two-player mode is likely to be fairly straightforward. However, perhaps later, after some other Atari dev projects I'd like to do ;-), I could revisit this and make a deluxe-expanded  "Super Immunity" release with additional gameplay options! )
  • Better (i.e. more comprehendible?) display of current vitamin and energy levels (number of power-ups you've collected and not expended yet)

* For difficulty in Intracellular mode, I'm thinking about the following for Beginner ('easy') setting compared to Advanced ('hard'):

  • Number of infecting vRNA strands per screen is fewer (e.g. 8 vs. 12) 
  • After implanting, each vRNA strand will produce fewer new virus copies before expiring (e.g. 4 vs. 6)
  • Energy level cannot drop below 1 (meaning you can always "kill" infection object in beginner mode... but doing so can cost in the overall Health score depending on vitamin level)
  • Bouncing an Energy Molecule with the Free Ribosome will always direct it downward rather than down, sideways, or upwards
  • Energy molecule random initial position will generally lower on screen (closer to mitochondria)
  • Speed of all objects generally slower, time between random motion changes generally longer (already true in Exocellular mode)

 

If you played the current demo releases yourself, or watched my Odysee videos or the ZPH play-throughs, and you have any feedback in general or reaction to this comment, please let me know! I may not be able to implement everyone's suggestions (especially if they conflict), but I'm sure there's some great suggestions out there!

 

  • Like 2
Link to comment
Share on other sites

It's been a long day and evening, but I have Immunity running fairly well with the main changes I outlined above and some additional details I had planned out.  I will paste the contents of a partial and early draft of the manual, but also include it formatted in a .pdf, along with the playable demo .bin, of course.  I hope you enjoy this version better than the Dec. 31 version... it has a lot fewer bugs and illogical play mechanics.  This new version is much closer to my vision. 

 

I expect to continue to polish the gameplay, especially the controls and tuning of special constants that affect the gameplay balance (initial inventory levels and size of infection rounds, etc.).  I will also work on some of he longer-term features I outlined above. My first three ROM banks don't have a lot of room left, but the last bank has about 3.5K, so plenty of space I think for the new things I listed above.  

 

Please provide your feedback on what you find too easy/hard, what you like and not like so much, as well as anything that seems like a bug. Don't forget to try the left difficulty switch!

 

IMMUNITY

Atari 2600 Game by Michael Losh (AKA mike_sohl)

 

Gameplay, Rules, and Scoring

 

(Disclaimer: Intended functionality... almost all implemented, but not guaranteed bug-free yet)

 

Game Overall

  • Health starts at 96 percent, max health is 99% (100 not allowed)

  • Gameplay starts in the Intracellular mode screen

  • Game ends in Death if Health reaches 0

  • Game ends in Death if Antibodies reaches 0 with unkilled viruses present/available

  • Game ends in Immunity if Viral Load reaches 0 with at least one Antibody available

  • Viral load is the number of available viruses that can attack and latch onto cells, may be visible or waiting off-screen

  • Breath count in status area indicates how long the player managed to survive or how quickly Immunity is won

  • Game difficulty is controlled by the Left Difficulty Switch.

Game Overall -- Easy/Beginner Difficulty

  • Viral load starts at 9

  • Antibody supply starts at 12

  • Vitamin Molecules, Energy Molecules, vRNA, and free Viruses in/out of cell move slower generally

Game Overall -- Hard/Advanced Difficulty

  • Viral load starts at 15

  • Antibody supply starts at 6

  • Vitamin Molecules, Energy Molecules, vRNA, and free Viruses in/out of cell move faster generally

Intracellular play mode (action inside cell)

  • Screen ends when there are no more available vRNA strands, implanted vRNA has all expired, and all free viruses have been killed or escaped; when screen ends, it switches to Exocellular mode screen

  • Screen always(?) has three latched viruses at the top (not counted as part of Viral Load)

  • Player controls the Free Ribosome up/down along the left or right edge of playfield

  • Player can shoot the Free Ribosome rightward or leftward through the cytoplasm across the screen

  • Pressing fire will "scrunch" the ribosome to get ready to shoot, while releasing the fire button will let the ribosome go

  • Moving the joystick while Free Ribosome is shooting will not affect its direction

  • Free Ribosome shooting speed is based on Energy Level 0 to 4, with higher levels being faster

  • When there are no infection or 'good' objects up high near the outer cell membrane, the Free Ribosome can "bump" the outer cell membrane by player moving it up to the membrane and hitting "fire" in very close synchronization to the time it reaches the top position at the membrane.

  • If successfully bumped, the membrane moves and latched viruses stretch and cytoplasm color goes white for a moment and then a batch of spike proteins shaken free from a latched virus will appear in the cytoplasm. The batch of loose spike proteins will include 1 to 4 particles according to Energy Level of (1 to 4)

  • The Free Ribosome can collect Vitamin Molecules by touching them (while shooting or along side)

  • When close to a Vitamin or loose spike protein batch, Free Ribosome will open into a "chomping" pose

  • (As a consequence of the graphics kernel's use of drawing objects), the main portion of the Free Ribosome's color will match the color of the current "Good" object, which may be a Vitamin Molecule, Energy Molecule, or Loose Spike Protein batch

  • Killing each vRNA strand or a free virus expends 1 Vitamin Level, reduces Health percent by 2

  • Killing each free virus when the Vitamin Level is low (depending on difficulty) may reduce Energy Level by 1 (depending on current energy level and difficulty)

  • Killing a free virus will cause the Free Ribosome to bounce backwards from the collision

  • Killing each free virus will loosen 1 to 4 spike proteins in a batch according to Energy Level 1 to 4 that can be collected

  • Loose spike proteins have 1 to 4 pieces and will add that many Antibodies if collected, up to the limit (32 antibodies)

  • Each virus that escapes adds to the Viral Load and decreases Health by 3 percent

  • Up to three vRNA strands can be implanted on the Endoplasmic Reticulum (E.R.) at a time, when a vRNA strand expires, its space opens again for other vRNA strands to implant there if any are available

  • Up to 4 Vitamin Molecules can be collected (additional collection of vitamins objects will not increase tally)

  • An Energy Molecule must touch the Mitochondria in the lower sides of the playfield to be absorbed and raise the Energy Level, which may be from 0 (adv. difficulty only) to 4. Additional Energy Molecules touching Mitochondria will not increase tally.

  • While some Energy Molecules may drift into the mitochondria passively, the Free Ribosome may bounce the Energy Molecule into a better vertical position to be absorbed; bouncing occurs when the Free Ribosome touches the Energy Molecule

  • Each implanted vRNA strand can grow multiple copies of new viruses

  • Health bonus of 3 percent per Vitamin Level at end of Intracellular screen

  • Health bonus of 3 percent per Energy Level at end of Intracellular screen

Intracellular -- Easy/Beginner Difficult

  • Infecting vRNA strand count starts at 8 for each Intracellular screen

  • After implanting, each vRNA strand will produce 4 viruses before expiring

  • Energy level cannot drop below 1

  • Bouncing Energy Molecule with the Free Ribosome will always send the Energy Molecule downward

  • Energy molecule random initial position generally lower on screen (closer to mitochondria)

Intracellular -- Hard/Advanced Difficulty

  • vRNA strand count starts at 12 for each intracellular screen

  • After implanting, vRNA will produce 6 viruses before expiring

  • Energy level can drop to 0, which is too low to kill vRNA and free viruses (Free Ribosome will bounce off)

  • Bouncing Energy Molecule with the Free Ribosome may send the Energy Molecule upward, sideways or downward depending on the relative vertical position of the Free Ribosome and Energy Molecule

  • Energy molecule random initial position generally higher on screen (farther from mitochondria)

 

Exocellular play mode (action outside cell)

  • Screen ends when all tissue viruses have been neutralized or latch, or when three viruses have latched

  • Player controls Bound Ribosome that can move horizontally along the E.R.

  • Player may fling Antibodies from Bound Ribosome by pressing Fire button; press causes the ribosome to scrunch up in preparation of the firing while releasing the fire button actually flings the Antibody upward

  • Antibody speed is fast if the Antibody does not hit the cell membrane or solid parts of tissue and very slow after it does hit something

  • Player may not fling another Antibody while prior Antibody is still moving, so aim carefully!

  • When antibody hits attacking virus, it covers & neutralizes 1 to 3 rows of the spike protein depending on the vertical position of the virus when hit (higher hits cover three rows of spikes, low hits cover one row, intermediate hits cover two rows; covered rows of spikes take on a yellow color (versus red normally)

  • When a virus has all of its spikes neutralized (appearing yellow), the player can switch control to an external Macrophage by pressing upward on the joystick; player can switch back to controlling the Bound Ribosome by pressing downward on the joystick.

  • The macrophage will "chomp" when moved left/right by the joystick in the tissue but will be vertically positioned alignment with the lowest fully-neutralized virus; when the neutralized virus is fully engulfed by the macrophage, the player may press the fire button to dissolve (and kill) the virus

  • Cell membrane normally has three open pores but the size of them will vary in a cyclic manner during normal "respiration"

  • When at least one virus latches to the cell membrane, the center membrane pore closes up, and the left & right pores will twitch a small amount, reflecting the cell's "shocked" state

  • Heath bonus of 10 percent for clearing a tissue screen with NO latched viruses

  • Health penalty of 5 percent for each latched virus (up to three per screen)

  • Health penalty of 5 percent per unkilled virus (either latched, free at end of screen, or still available) at end of screen

  • (No antibody bonus for clearing a level now as in earlier releases)

Exocellular -- Easy/Beginner Difficulty

  • Per-Tissue attacking virus count set to 6

  • Attacking virus speed slower, generally

Exocellular -- Hard/Advanced Difficulty

  • Per-Tissue attacking virus count set to 9

  • Attacking virus speed faster, generally

 

Immunity_Initial_Manual.pdf

Immunity_2022Jan18.bin

Edited by Sohl
  • Like 3
  • Thanks 1
Link to comment
Share on other sites

I'm honored to be Nominated for a WIP 2021 Atari Homebrew Award.  My competition is truly awesome!  The demo version I had ready at the end of 2021 was still quite a mess.  Some of the other nominees are much closer to a final version.   


https://atariage.com/forums/forum/203-atari-homebrew-awards/   (main page)

 

2600 WIP (Original) award category:

 

Downloads of ALL eight nominees in this category are here: https://onedrive.live.com/?authkey=!ALk2LM2cMybD8Bc&id=EBF48A1964E7EEB5!3387&cid=EBF48A1964E7EEB5

 

Try them all and vote for your favorite!

Atari2600BestWIPHomebrew(Original).thumb.jpg.cea5558033b39ec0d42888223fcd15f9.jpg

  • Like 5
Link to comment
Share on other sites

  • 2 weeks later...

I'd like to share a new version of the demo.  TL;DR: New status displays in the "intracellular" mode; slight updates to colors and virus sprites.

imm_1.thumb.png.8460d9f5078eb0f04df77d65778bd091.png

Summary of changes and additions:

  • The vitamin and energy levels in the intracellular mode are now displayed just below the Health percent and Breath count numbers, replacing the Viral Load bar (more to come on that).
  • The amount of new antibodies created from collected spike proteins is shown at the screen bottom (the endoplasmic reticulum region) as a yellow or green bar that expands from the center, one increment per two new antibodies. Color indicates how close to fully "topped up" you will be with antibodies when you switch to exocellular mode, green for within 8 antibodies of the max, yellow otherwise.
  • In intracellular mode, the top Antibodies supply bar is now muted in color (more to come there too).
  • Virus sprites, both dual-sprite version and one sprite version (with alternating color rows), have been tweaked in appearance, mostly to make them "more spikey".
  • Injecting viral RNA speed range is more limited and does not allow the slowest speeds in the January demo.  Right now the vRNA speed is not difficulty-adjusted, but I plan to do this.
  • Special Effects/Sound was re-engineered under the hood to use less RAM.  Some events share the same count-down variable and can preempt each other, others are have independent counters and can be managed simultaneously, although only one associated sound for an event will be heard at a time.
  • Some code refactoring to remove redundancy.

 

imm_updates_2022Feb1.thumb.jpg.9f0ffffc75ee20ba29d2c47f13aef4b3.jpg

 

Fixes:

  • Several more minor color adjustments for hopefully better contrast in both play modes.
  • Fixed screen linecount issues on title/game-over screens
  • Used Developer Settings to find some bad initializations such as forgetting # on a load instruction* for an immediate constant (and not some random memory location) as well as assuming undocumented hardware register bits are always zeros.
  • I don't want to admit or think about how much time I spent troubleshooting a game object positioning issue before I re-read Andrew Davie's "Newbie" Session 22 (part 1) that is about sprite X positioning and from which I realized I had a positioning loop that was crossing a page boundary* in at least one instance that was throwing off the timing and therefore the location of the RESP0 strobes.  I think it would be good to find or create some macros to keep these critical sections of code or data tables that should not cross page boundaries intact by automatically doing selective alignment to page boundaries.

* Even us seasoned programmers goof up sometimes!

Disclaimers:

  • For speed of testing/debugging while I work on feature additions/changes, I usually play at Beginner difficulty; consequently, advanced difficulty is much less tested and could be buggier or at least less refined/balanced; I'll do more testing in advanced mode as the feature set solidifies.
  • There is a bug in exocellular mode where if you hit a virus with an antibody and a second virus is also visible, sometimes (but not always) both will get hit and have spikes neutralized.:ponder: ... Consider this a temporary power-up!  (maybe I'll come up with an intentional power-up scheme :cool: )  FIXED (? I think?) in Feb1b .bin
  • UPDATE: Free Ribosome speed bug... Energy level 4 is not the fastest, its the same as level 2.  FIXED in Feb1b .bin
  • UPDATE: 'Disappearing neutralized virus' when close to cell and Macrophage is active. FIXED in Feb1b .bin

 

To-Do (at least I very much want to implement and offer...)

  • Bug fixing (of course)!
  • Screen-switching status update "intermissions" that will recap what happened in the just completed screen in a hopefully engaging way
  • Basic two-player game mode.
  • Plan out some cool benefits for the potential retail version compared to he demo, besides removal of "DEMO" appellation

 

As always, I enjoy your feedback and will consider any issue reports or suggestions. 

 

 

immunity_2022_Feb_1b.bin

Edited by Sohl
Updates, fixed some bugs so attached new .bin
  • Like 3
  • Thanks 2
Link to comment
Share on other sites

I've  been busy 'under the hood' of Immunity to free up space to add new features.  This mostly entailed moving some drawing kernel code with the supporting subroutines and constant data tables into Bank 3 from Bank 0 and Bank 1.  It was kind of tedious to re-order the constant data tables to pack together and align nicely in the new bank arrangements, but now I have much more space in Bank 0 and Bank 1, which will allow me to add the new significant features I mentioned above.  

 

I had some code regressions, of course, doing all of this.  Besides getting the new bank-switching jumps correct and not causing timing issues, I also had a pair of bugs with the same root cause: I had a few strobes to the HMCLR register (sta HMCLR) that were set up to occur some period of time after strobing HMOVE, as proscribed in the 2600 programming manual.  However, when I reorganized things, code that was contributing to the needed delays were moved, so the delay before HMCLR was no longer sufficient.  I saw sprites that looked sliced-up where each row was at a progressively skewed but disjoint position, and a missile graphic stretched or repeated on a row.  I just needed to put in some time-wasting subroutines to provide the needed delay before HMCLR is strobed.  Maybe layer I'll find a new location in the code to strobe HMCLR so I don't need to have the artificial delays and regain those few bytes.  

 

I also fixed a potential game-over issue: in the "intracellular" gameplay, when you disrupt the injecting viral RNA, you will loose health.  If your health drops to zero, it should be game-over!  However, in recent releases, I don't think it has been working this way.  The game lets you continue until the intracellular mode is done, at which time you might get health bonus that  allows you to keep playing in the exocellular mode.  Now if you drop to 0 percent health, it is an immediate game-over event.  

 

I'm not posting a new demo release yet.  I'd like to add at least one player-obvious new feature first.  

 

Have you voted in the 4th Annual Atari Homebrew Awards yet?  

 

Edited by Sohl
typo
  • Like 2
Link to comment
Share on other sites

I'm trying out some different colors.  Here's a range of background colors for the upper score area.  The dark red is good from a biological theme perspective, but some things won't stand out as well (the virus icon for the status bar, not shown here).  Black is good for hiding HMOVE bars and high contrast, of course.  I like the blue for contrast too, but maybe weird for the game's theme, as is the mossy green.  The bottom one is a very dark brown.  It's not too bad for contrast and could be a plausible skin/hair color, but I'm not committed to it yet.

 

These examples are captured from my instance of Stella emulator with these settings:

ScoreBackgroundColors.thumb.jpg.3f1b10e69515208dc96afc7f5cbc5048.jpg

 

You can also see one of the sprite changes I'm trying out:

imm_41.thumb.png.1c0cea5a4627c54f0dfa8da3b140b003.png

 The viral RNA has been made thicker for better visibility. 

 

The cytoplasm has been made another notch darker, but I'm not sure I like it (at least in Stella).  It's making the loose spike protein harder to see.  I'm using these video settings in Stella:

StellaVidSettings.thumb.jpg.b8c9ce8e76ca5e4492739c84211e24d6.jpg

 

Maybe I will make special ROM build where I can use the other joystick to dink the colors around and see how they work together on a real CRT TV.  Unfortunately, however, I think my 40+ year old 2600 console is not outputting as clean and bright of a video signal as it should.  Perhaps I need to adjust a trim pot in the 2600 video circuitry or replace some capacitors?  I've not attempted that yet.  I'm sort of handy with electronics but I'm much more of a software guy than hardware.   

 

What are your thoughts?

  • Like 1
Link to comment
Share on other sites

5 hours ago, Sohl said:

I'm trying out some different colors.  Here's a range of background colors for the upper score area.  The dark red is good from a biological theme perspective, but some things won't stand out as well (the virus icon for the status bar, not shown here).  Black is good for hiding HMOVE bars and high contrast, of course.  I like the blue for contrast too, but maybe weird for the game's theme, as is the mossy green.  The bottom one is a very dark brown.  It's not too bad for contrast and could be a plausible skin/hair color, but I'm not committed to it yet.

 

On its own, the dark blue panel gives me a hospitalish vibe. But atop a mostly-blue playfield, it might look aquatic.

 

Very nice game here!

  • Like 1
Link to comment
Share on other sites

you could go with all items colors user selectable. background, foreground, icons, texts. Have a default (or several) then all the others definable. sure , you want stuff thematically a specific way, but since your actually thinking about this, make it possible for the user to change. If you are doing HS saves you could save the custom settings people choose.  

  • Like 1
Link to comment
Share on other sites

8 hours ago, 351coug said:

you could go with all items colors user selectable. background, foreground, icons, texts. Have a default (or several) then all the others definable. sure , you want stuff thematically a specific way, but since your actually thinking about this, make it possible for the user to change. If you are doing HS saves you could save the custom settings people choose.  

I have thought about having some user-configurability, but this takes at least a little RAM and I'm not done implementing all the main features yet, so I need to see where I will stand later on.  My comment about using a second joystick to switch & test colors was just in context of a temporary development step, but I suppose I could try to leave it as a feature I could bring back if I determine I can fit everything in.  

 

I've not thought about HS saves... I don't even know how to do this currently.  I've been developing this game as if it was an old-time 16 KB ROM with F6 bank switching.  I'm aware of other expanded formats with extra RAM, and I suppose some modern carts have persistent storage features.  It would be cool to be able to store and retrieve settings, I do admit. 

 

Edited by Sohl
typo
Link to comment
Share on other sites

10 hours ago, Pat Brady said:

 

On its own, the dark blue panel gives me a hospitalish vibe. But atop a mostly-blue playfield, it might look aquatic.

 

Very nice game here!

I appreciate the compliment.  Yes, for the "intracellular" play mode, that would be a lot of blue if I went with the blue score background!

 

The more I think about it, I do like the idea at least of the deep red background, but to make that work, I'll need to adjust the colors of some other score/status things I think to make it all look decent, such as using white for the breaths count and maybe the status bars so I don't have yellow against red.  I'd probably also need to put another color behind the status bar icons so that the virus icon with red spikes is recognizable.  

Link to comment
Share on other sites

Some recent development:

 

After spending way too much time to make a dark background around the status area icons left of the status bars in Exo mode (so I could have a all-deep-red status area background color as mentioned upthread), I decided it did not look good, so I went instead with a pink color for the upper portion of the score/status area, and have that background color fade into a deep red.  Having a relatively light background color behind the virus load icon helps the virus icon with its deep red spikes still be discernable.  I may still adjust these colors a bit more, but I'm happier now with this design artistically. :P

imm_45.thumb.png.4bd55016f039bdfd8b4b32e08cec5ff0.png

 

Feb. 8-15
Changes: 
* Health penalties for disrupting RNA and virus escape increased to 4 and 5, respectively
* Random choice for next energy/vitamin molecule made more likely to alternate (prior code often had long streaks of same type)
* Tweaked vitamin sprite; made vRNA sprites thicker horizontally so they show up better on TV
* Pink-to-ruddy-red fade of background color in score area; made color of score digits and score icons darker to contrast with pinkish background

 

Additions: 
* Added black heart and -4 sprites that display in quick succession for disrupting vRNA fx if you don't have any vitamins and will therefore have a health penalty

imm_46.thumb.png.26cf301902356203d57d4f6c6b948837.pngimm_47.thumb.png.a9c6c0da3b969c67571d856787c497f8.png

 

Fixes for...
* Vitamin collect animation pulling in wrong sprite data
* vRNA disruption fx should depend on scoring, which is based on vitamin level.

 

I still want to implement the basic scoring/penalty review intermission displays I mentioned upthread before I release a new version of the demo ROM.  Stay tuned!
 

  • Like 2
Link to comment
Share on other sites

  • 3 weeks later...

I hope you are all well!  I've been rather quiet lately from a combination of more-than-usual family events going on and some rather tricky development on Immunity lately. 

 

I've been implementing a scoring review/update mode after one screen of intracellular game play is completed.  It's now nicely animated, but it was a bit of a beast to get working well, especially scanlines per screen.  I've had some really frustrating hours tackling the scanline issues... rather like whack-a-mole... they kept popping up!  :mad:

 

Another thing I'm trying now is using flicker to draw the free-floating new viruses in the intracellular screens.  While it makes them dimmer and more blueish (due to mixing of the playfield background color), it allows them to appear normal in terms of overall shape and color distribution.  Unlike the exocellular screen, where I use both P0 and P1 sprites simultaneously to draw the free-moving viruses, on the intracellular screen I really wanted to keep P0 free for the vitamin, energy, and loose spike protein objects that can appear basically anywhere relative to the free-moving new viruses.  I had been using a single sprite with alternating color bands for the virus, but was not very happy with its appearance. As for the new look, hmmm, perhaps I can claim the blueish and dimmer color is due to the fact the virus is still inside the cell's cytoplasm!  :ponder: 

 

Before I post a new playable demo, I want to implement a similar scoring review/update mode for the exocellular screens.  If I can mostly reuse existing code for that, I might be able to post a new demo here tomorrow! At the worst, hopefully no more than a few days.

 

Here are a few teaser screen captures. 

 

imm_55.thumb.png.63982b41c896d22f59c7082f3f272ac9.png

 

imm_59.thumb.png.56ac6b4f8a679890db9e43383a7b2c63.png\

 

imm_63.thumb.png.4c734f2e85db73ce7e3aa45d30b5bfb9.png

 

P.S. Something came up in my family today that left me with less dev time.  I did manage to make the review animation even more lively, however!

Edited by Sohl
  • Like 2
Link to comment
Share on other sites

GAHHH!  Work on the animated scoring review screen after the "exo" mode isn't going great.  It sort of works, but animation runs much longer than it should and pulls in improper sprite data.  But worse than that, I have now a regression on the main "intra" play mode where the two parts of the free ribosome (ball and player 0 missile) are not positioned together as intended... the TIA ball object is progressively shifted rightward the further both objects are moved toward the right side of the screen, and it eventually wraps around to the left side when the missile is still on the right.  :mad:

 

Maybe I'm violating some TIA register change time restriction where the count can't settle into the intended value before its disrupted by something.  But I don't think I was mucking around in that part of the code, and my strobe of HMCLR is about 35 cycles after HMOVE, so things should be settled by then, right?  :?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...