Lukas Krickl [Wed, 23 Apr 2025 19:25:29 +0000 (21:25 +0200)]
map: Added note for eventual map loader rewrite
Lukas Krickl [Wed, 23 Apr 2025 19:20:29 +0000 (21:20 +0200)]
cells: cells now have a timer just like states
This allows easier scheduling e.g. for build timers
Lukas Krickl [Wed, 23 Apr 2025 16:01:51 +0000 (18:01 +0200)]
simulation: simulation updates now happen in a fixed interval per frame
This makes the game hit its 60fps target.
Currently inputs still get eaten if a frame drops though.
Lukas Krickl [Sun, 20 Apr 2025 18:12:00 +0000 (20:12 +0200)]
cells: Added update loop
The simulation update loop currently updates all cells in a single
frame.
This is way too slow and will need to be split up.
Lukas Krickl [Sun, 20 Apr 2025 06:16:44 +0000 (08:16 +0200)]
cells: Added additional input to cells
cells now also get passed the screen ptr to their tile in bc
Lukas Krickl [Fri, 18 Apr 2025 19:16:10 +0000 (21:16 +0200)]
building: Added cell state setter
Lukas Krickl [Fri, 18 Apr 2025 11:47:00 +0000 (13:47 +0200)]
roads: Added road building
Roads now will need to check adjacent tiles to draw the correct tile.
Lukas Krickl [Fri, 18 Apr 2025 07:56:55 +0000 (09:56 +0200)]
bg: Added tile update queue processing
Lukas Krickl [Tue, 15 Apr 2025 03:35:16 +0000 (05:35 +0200)]
bg: made queue index 2 byte offset
Lukas Krickl [Mon, 14 Apr 2025 15:22:05 +0000 (17:22 +0200)]
macros: Fixed macro expansion bug in ulas
Lukas Krickl [Mon, 14 Apr 2025 13:41:55 +0000 (15:41 +0200)]
bg: Added bg update queue
This queue can store up to 32 update requests for tiles.
Lukas Krickl [Sat, 12 Apr 2025 19:06:48 +0000 (21:06 +0200)]
update: added stubs for cell updates
Lukas Krickl [Thu, 10 Apr 2025 16:45:08 +0000 (18:45 +0200)]
player: Fixed out of bounds jump when aborting up moves
Lukas Krickl [Thu, 10 Apr 2025 15:27:55 +0000 (17:27 +0200)]
buildings: cusros can now call the building state
Lukas Krickl [Thu, 10 Apr 2025 12:04:29 +0000 (14:04 +0200)]
player: Added code to calculate cursor building offset when pressing a
Lukas Krickl [Thu, 10 Apr 2025 11:05:04 +0000 (13:05 +0200)]
player: stub for building buildigs
Lukas Krickl [Tue, 8 Apr 2025 18:04:38 +0000 (20:04 +0200)]
simulation: Added cell update loop
Lukas Krickl [Tue, 8 Apr 2025 15:48:21 +0000 (17:48 +0200)]
simulation: wip simulation loop
Lukas Krickl [Tue, 8 Apr 2025 15:04:30 +0000 (17:04 +0200)]
cells: Added copy code for next cell update routine
Lukas Krickl [Tue, 8 Apr 2025 14:57:17 +0000 (16:57 +0200)]
cells: refactored cell struct to save more memory
Lukas Krickl [Tue, 8 Apr 2025 10:54:24 +0000 (12:54 +0200)]
cells: wip cell update code
Lukas Krickl [Wed, 2 Apr 2025 10:43:36 +0000 (12:43 +0200)]
cells: removed comment
Lukas Krickl [Wed, 2 Apr 2025 10:42:50 +0000 (12:42 +0200)]
cells: stubs for cell updating and management
Lukas Krickl [Wed, 2 Apr 2025 07:40:30 +0000 (09:40 +0200)]
cells: Added basic setup for cell templates
This allows updating cells
Lukas Krickl [Tue, 1 Apr 2025 19:25:41 +0000 (21:25 +0200)]
cursor: Added preview tile
Lukas Krickl [Tue, 1 Apr 2025 11:13:00 +0000 (13:13 +0200)]
state: cursor states are now also simply using a state machine
Lukas Krickl [Sun, 30 Mar 2025 16:31:48 +0000 (18:31 +0200)]
ui: Added basic mapping for cursor selector
This is the first step to being able to place buildings
Lukas Krickl [Sun, 30 Mar 2025 06:00:30 +0000 (08:00 +0200)]
tiles: Updated 'R'
Lukas Krickl [Sun, 30 Mar 2025 05:41:21 +0000 (07:41 +0200)]
ui: Added more strings and adjuted label position
Lukas Krickl [Sun, 30 Mar 2025 04:47:38 +0000 (06:47 +0200)]
ui: added cursor movemnet
the ui cursor can now move and displays strings from a table
Lukas Krickl [Sun, 30 Mar 2025 04:21:39 +0000 (06:21 +0200)]
tile update
Lukas Krickl [Sun, 30 Mar 2025 04:16:40 +0000 (06:16 +0200)]
ui: leaving build menu now clears oam
Lukas Krickl [Sat, 29 Mar 2025 18:05:53 +0000 (19:05 +0100)]
character encoding: Fixed char encoding to start at 1 for '0'
This allows NUL terminated strings to be used and still contain '0'
Lukas Krickl [Sat, 29 Mar 2025 17:57:35 +0000 (18:57 +0100)]
ui: Added objputs
This routine allows printing using objects rather than bg tiles.
Lukas Krickl [Sat, 29 Mar 2025 15:57:43 +0000 (16:57 +0100)]
ui: Added basic ui state change
Lukas Krickl [Sat, 29 Mar 2025 10:51:42 +0000 (11:51 +0100)]
cells: Updated cell struct
Added more notes for how cells operate
Lukas Krickl [Sat, 29 Mar 2025 06:37:57 +0000 (07:37 +0100)]
updated raod grass and water tiles
Lukas Krickl [Sat, 29 Mar 2025 06:27:26 +0000 (07:27 +0100)]
update: Removed update table
Lukas Krickl [Sat, 29 Mar 2025 05:22:26 +0000 (06:22 +0100)]
ui: added stub for UI state
Lukas Krickl [Fri, 28 Mar 2025 17:20:03 +0000 (18:20 +0100)]
map: reduced cell memory size
Lukas Krickl [Fri, 28 Mar 2025 13:28:39 +0000 (14:28 +0100)]
game_state: game state updates now use the same state machine as actors
Lukas Krickl [Thu, 27 Mar 2025 19:56:04 +0000 (20:56 +0100)]
state: Added proper state machine based cursor movement
Lukas Krickl [Thu, 27 Mar 2025 16:59:28 +0000 (17:59 +0100)]
cursor: cursor movement is now handeled by the state system
Lukas Krickl [Thu, 27 Mar 2025 12:59:23 +0000 (13:59 +0100)]
wip: state update routine
Lukas Krickl [Thu, 27 Mar 2025 11:56:04 +0000 (12:56 +0100)]
wip: state machine for cursor
Lukas Krickl [Thu, 27 Mar 2025 10:53:38 +0000 (11:53 +0100)]
Added note about state handling
Lukas Krickl [Thu, 27 Mar 2025 10:45:39 +0000 (11:45 +0100)]
state machine: working on a simple state machine
This can be used for simple cursor actions
Lukas Krickl [Thu, 27 Mar 2025 10:16:09 +0000 (11:16 +0100)]
cursor: the cursor can no longer wrap
Scroll also stops when getting to the edge.
Lukas Krickl [Wed, 26 Mar 2025 17:21:21 +0000 (18:21 +0100)]
cursor: preventing camera from scrolling out of bounds in top/left
direction
Lukas Krickl [Wed, 26 Mar 2025 16:48:05 +0000 (17:48 +0100)]
working on canceling scrolls when camera cannot move
Lukas Krickl [Sat, 22 Mar 2025 17:36:30 +0000 (18:36 +0100)]
WIP: working on aborting moves when they would wrap map
Lukas Krickl [Fri, 21 Mar 2025 19:20:26 +0000 (20:20 +0100)]
tiles: re-arranged tiles and fixed map
Lukas Krickl [Fri, 21 Mar 2025 18:56:30 +0000 (19:56 +0100)]
tiles: reworked tile loader to use better bank names
Lukas Krickl [Fri, 21 Mar 2025 17:34:55 +0000 (18:34 +0100)]
video: Added bg tileset cycles
Lukas Krickl [Fri, 21 Mar 2025 17:19:19 +0000 (18:19 +0100)]
scroll: scroll updates are now correctly performed right after moving
This prevents the cursor from being displayed incorrectly for a single
frame causing a flash.
Lukas Krickl [Thu, 20 Mar 2025 18:51:28 +0000 (19:51 +0100)]
cursor: working on making cursor movement better
Mostly trying to improvie cursor sprite positoning when scrolling.
Lukas Krickl [Thu, 20 Mar 2025 18:32:42 +0000 (19:32 +0100)]
player: Removed cursor abort again for now
unlink2 [Thu, 20 Mar 2025 18:26:31 +0000 (18:26 +0000)]
Merge pull request 'Scope change' (#5) from scope-change into master
Reviewed-on: https://codeberg.org/unlink2/gbrg/pulls/5
Lukas Krickl [Wed, 19 Mar 2025 21:48:27 +0000 (22:48 +0100)]
cursor: working on aborting cursor move and scroll when reaching the
edge of the map
Lukas Krickl [Tue, 18 Mar 2025 20:15:42 +0000 (21:15 +0100)]
ui: Added window
Lukas Krickl [Tue, 18 Mar 2025 19:32:58 +0000 (20:32 +0100)]
Removed story.md
Lukas Krickl [Tue, 18 Mar 2025 17:37:02 +0000 (18:37 +0100)]
tiles: added placeholder tiles for rci buildings
Lukas Krickl [Tue, 18 Mar 2025 16:29:25 +0000 (17:29 +0100)]
video: Added delay to scroll
also added a few tiles
Lukas Krickl [Tue, 18 Mar 2025 16:11:43 +0000 (17:11 +0100)]
cursor: moved cursor movement to macro
Lukas Krickl [Mon, 17 Mar 2025 16:55:14 +0000 (17:55 +0100)]
scroll: Added basic scrolling to map
Lukas Krickl [Mon, 17 Mar 2025 15:36:54 +0000 (16:36 +0100)]
map: changed map size to 32*24
Lukas Krickl [Mon, 17 Mar 2025 15:33:44 +0000 (16:33 +0100)]
map: Added base map loader
Lukas Krickl [Mon, 17 Mar 2025 04:22:12 +0000 (05:22 +0100)]
defs: Tiles now have an offset to refer to a head tile
This head tile is used to point to a tile that manages to overall state
of multi-tile structures.
Lukas Krickl [Sun, 16 Mar 2025 20:55:10 +0000 (21:55 +0100)]
player: Added basic cursor movement
Lukas Krickl [Sun, 16 Mar 2025 20:13:33 +0000 (21:13 +0100)]
defs: Added struct def for cells
Lukas Krickl [Sun, 16 Mar 2025 19:28:09 +0000 (20:28 +0100)]
scope change: removed most gameplay code
This will be a full-on rework of the engine.
Lukas Krickl [Sun, 16 Mar 2025 16:45:37 +0000 (17:45 +0100)]
TODO: clarified tile update
Lukas Krickl [Sun, 16 Mar 2025 11:34:59 +0000 (12:34 +0100)]
Scope change: Updated readme and TODO
unlink2 [Sun, 16 Mar 2025 11:05:56 +0000 (11:05 +0000)]
Merge pull request 'bat-rework' (#4) from bat-rework into master
Reviewed-on: https://codeberg.org/unlink2/gbrg/pulls/4
Lukas Krickl [Sat, 15 Mar 2025 04:43:42 +0000 (05:43 +0100)]
tiles: Added placeholder 'at' symbol
Lukas Krickl [Thu, 13 Mar 2025 18:49:54 +0000 (19:49 +0100)]
Added todo
Lukas Krickl [Sun, 9 Mar 2025 11:38:07 +0000 (12:38 +0100)]
actor: restored actor ability to collide with walls and doors
Lukas Krickl [Sun, 9 Mar 2025 11:11:16 +0000 (12:11 +0100)]
actor: Removed old animation code
Lukas Krickl [Fri, 7 Mar 2025 14:16:38 +0000 (15:16 +0100)]
TODO: reworded todo item for stats
Lukas Krickl [Fri, 7 Mar 2025 14:06:22 +0000 (15:06 +0100)]
TODO: Added todo for new stats system
Lukas Krickl [Thu, 6 Mar 2025 20:10:37 +0000 (21:10 +0100)]
bat: bats now pick a random direction to walk in again
Bats can now move on their own again, but they do not perform collision
checks nor mark tiles as occupied yet.
Lukas Krickl [Mon, 3 Mar 2025 06:30:35 +0000 (07:30 +0100)]
TODO: Added note about actor spawning
Lukas Krickl [Sat, 1 Mar 2025 22:38:10 +0000 (23:38 +0100)]
chore: Updated gitignore
Lukas Krickl [Sat, 1 Mar 2025 18:31:27 +0000 (19:31 +0100)]
symbols: Changed default symbol format
Lukas Krickl [Thu, 27 Feb 2025 19:50:32 +0000 (20:50 +0100)]
actor/player: Added basic cursor tile
This tile indicate which actor is currently moving.
Lukas Krickl [Thu, 27 Feb 2025 05:04:10 +0000 (06:04 +0100)]
base_room: re-generated room
Lukas Krickl [Wed, 26 Feb 2025 19:10:38 +0000 (20:10 +0100)]
maps: Fixed bug that caused the mapgen script to palce actors wrongly.
Actor position rounding was incorrect causing actors to be in the wrong
spot.
Lukas Krickl [Wed, 26 Feb 2025 04:47:39 +0000 (05:47 +0100)]
BUGS: Added note about actor positions
Lukas Krickl [Mon, 24 Feb 2025 05:03:24 +0000 (06:03 +0100)]
TODO: Added cursor note
Lukas Krickl [Sun, 23 Feb 2025 13:56:56 +0000 (14:56 +0100)]
actor: removed bat update code
This is now replaced with a never ending state machine update.
Lukas Krickl [Sun, 23 Feb 2025 11:16:14 +0000 (12:16 +0100)]
state machine: every actor now has its own state machine memory area
Each actor gets 3 bytes. the sm load ptr macro now loads the correct
offset.
When a turn is ended the sm offset is advanced by sm_size. If the actor
table is reset to 0, sm offset is also reset.
Lukas Krickl [Sun, 23 Feb 2025 06:26:43 +0000 (07:26 +0100)]
actor: Renamed player_go to actor_go states
Lukas Krickl [Fri, 21 Feb 2025 17:19:06 +0000 (18:19 +0100)]
actors rework: cleanup
Lukas Krickl [Tue, 18 Feb 2025 15:59:03 +0000 (16:59 +0100)]
sram: Fixed sram_rand allocation
Lukas Krickl [Sat, 15 Feb 2025 14:17:18 +0000 (15:17 +0100)]
rand: Replaced rand with a very basic feedback shift register
This is by no means perfect but it is more random than what was here
before
unlink2 [Sat, 15 Feb 2025 08:40:44 +0000 (08:40 +0000)]
Merge pull request 'state: Removed old player input handling - replaced with new state machine' (#3) from state-machine-movement into master
Reviewed-on: https://codeberg.org/unlink2/gbrg/pulls/3
Lukas Krickl [Sat, 15 Feb 2025 05:49:04 +0000 (06:49 +0100)]
rand: srand is now stored in sram
This makes it so srand is not always the same value on boot.
Lukas Krickl [Sat, 15 Feb 2025 04:37:22 +0000 (05:37 +0100)]
TODO: Added extra note about combat
Lukas Krickl [Fri, 14 Feb 2025 16:59:18 +0000 (17:59 +0100)]
TODO: Added combat note
Lukas Krickl [Thu, 6 Feb 2025 15:56:53 +0000 (16:56 +0100)]
state: adding states for bat enemy