Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
399 commits
Select commit Hold shift + click to select a range
b630de9
More fixes
dellams Feb 28, 2026
7ebd8ab
lots more fixes and imrpovement for STARAPIClient, WEB5 API, tests et…
dellams Feb 28, 2026
af5b62e
Added a generic background worker/job/que system for the remaining me…
dellams Mar 1, 2026
23bef0c
fixes to the STARAPIClient tests
dellams Mar 1, 2026
4bcc3a8
fixing ODOOM Crashing when too many items in inventory!
dellams Mar 1, 2026
188ccb7
yay fixed ODOOM inventory by implementing scrolling! :)
dellams Mar 1, 2026
a7038a4
Added pgup,pgdown,end and home for paging and jumping to top/bottom o…
dellams Mar 1, 2026
85a822a
Improving inventory layout :)
dellams Mar 1, 2026
92cc12c
Quake gold and silver keys now appear in the hud! :)
dellams Mar 1, 2026
acc9712
fixing keys in ODOOM
dellams Mar 1, 2026
08e80f0
mint monsters on kill
dellams Mar 1, 2026
e0fcdb7
Added XP text so you now earn XP when you kill monsters in ODOOM, als…
dellams Mar 1, 2026
59dd6fd
when minting monster nfts hash is now returned in console log, improv…
dellams Mar 1, 2026
3ec166b
Added monsters tab to OQUAKE, XP, minting monster nfts when killing a…
dellams Mar 1, 2026
67bfe0b
lots more fixes for monsters, minting, xp etc! :) working better now! :)
dellams Mar 1, 2026
718c906
still trying to fix xp not updating after beaming in!
dellams Mar 1, 2026
dd82bd4
fixed!
dellams Mar 1, 2026
d514f3c
trying to fix xp issue!
dellams Mar 1, 2026
29a09c3
XP working! :)
dellams Mar 2, 2026
d562451
improving get xp (now new get avatar with xp endpoint on WEB4 OASIS API
dellams Mar 2, 2026
8a932c0
working on xp
dellams Mar 2, 2026
0839cb1
oprimized xp for starapiclient and ODOOM and OQuaKE and improving lay…
dellams Mar 2, 2026
e662aab
Moved XP to right more on ODOOM. Adding additional logging to STARAPI…
dellams Mar 2, 2026
536817b
backups
dellams Mar 2, 2026
b0d5f29
Trying to get monster kills to gain xp and mint nfts in OQUAKE withou…
dellams Mar 2, 2026
c3c7a32
door check ODOOM
dellams Mar 2, 2026
45623e1
still tying ! lol
dellams Mar 2, 2026
467649f
still trying to get monsters to be tracked in OQUAKE
dellams Mar 3, 2026
2715d2f
still trying to track monster kills in OQUAKE
dellams Mar 3, 2026
69baf3f
Finally can detect monster kills in OQUAKE :) So now earn XP and mint…
dellams Mar 3, 2026
f7d014d
fixing monster types in OQUAKE and items in ODOOm
dellams Mar 3, 2026
55b7710
Added missing OQUAKE monsters to ODOOM and made sure ODOOM and OQUAKE…
dellams Mar 3, 2026
59cbe5c
Added missing OQUAKE monsters to ODOOM and made sure ODOOM and OQUAKE…
dellams Mar 3, 2026
7d3ee1e
Fixing ODOOM piclups
dellams Mar 3, 2026
07f298e
can now pick up any item you want and use later in ODOOM! :)
dellams Mar 3, 2026
6e84b4f
more fixes to new use item later feature
dellams Mar 3, 2026
4cbcc9d
working on improving pickups for ODOOM.
dellams Mar 4, 2026
6e18813
Got new toast message working for when try to use health or armor fro…
dellams Mar 4, 2026
d4ef7a3
now plays same sound and shows same message for picking up star items…
dellams Mar 4, 2026
3335729
Docs: Add new getting started index by platform
dellams Mar 4, 2026
e53cea4
Docs: Add platform-specific OASIS development guides
dellams Mar 4, 2026
c7918be
Docs: Add platform-specific STAR CLI getting started guides and updat…
dellams Mar 4, 2026
4a125a1
Docs: Update main developer index with new getting started section
dellams Mar 4, 2026
7041419
Omniverse Docs: Add getting started index and platform guides
dellams Mar 4, 2026
9b4337d
Omniverse: Add cross-platform STAR API client build & deploy scripts
dellams Mar 4, 2026
6e8018d
Omniverse: Add ODOOM Linux/macOS build & run scripts
dellams Mar 4, 2026
8dc8053
Omniverse: Add OQuake Linux/macOS build & run scripts
dellams Mar 4, 2026
30360b5
Omniverse: Update ODOOM patch script for cross-platform paths
dellams Mar 4, 2026
9816d48
Omniverse: Remove temporary ODOOM sprite generation assets
dellams Mar 4, 2026
193c1e4
Omniverse: Refactor STAR API header for new XP queue and logging
dellams Mar 4, 2026
c56099e
Omniverse: Add Linux/macOS build reference documentation
dellams Mar 4, 2026
9c0f23b
Omniverse: Add pre-built STAR API shared libraries (Linux/macOS)
dellams Mar 4, 2026
7ad8780
feat: Improve cross-platform build scripts and README clarity
dellams Mar 4, 2026
a917bdd
refactor(odoom): Abstract platform-specific key codes
dellams Mar 4, 2026
a90c404
docs(stardna): Add commented BaseSTARPath example to DNA config
dellams Mar 4, 2026
a8100da
Enhance cross-platform build and documentation
dellams Mar 4, 2026
ff17460
Integrates `star_api.so` and updates ODOOM
dellams Mar 4, 2026
98914f8
Getting doors and health inventory items to apply from STAR inventory.
dellams Mar 5, 2026
528f37e
Merge branch 'master' of https://github.com/NextGenSoftwareUK/OASIS
dellams Mar 5, 2026
d975511
can pickup weapons again now! :)
dellams Mar 5, 2026
6410589
getting there fixing the doors!
dellams Mar 5, 2026
50fda01
doors nearly working in ODOOM! :)
dellams Mar 5, 2026
866d5a5
Finally fixed the doors so the correct keycard opens the correct door…
dellams Mar 5, 2026
fa3d6a0
ODOOM nearly done! :) Now when you pick up items it only goes in your…
dellams Mar 6, 2026
2d59b2e
Key bindings no longer get reset in ODOOM.
dellams Mar 6, 2026
0b70392
Bound C and F for use health and use armor in ODOOM and added new OAS…
dellams Mar 6, 2026
dede752
loads done fixing ODOOM and OQUAKE and adding new Quest popup and tac…
dellams Mar 7, 2026
de90d2c
More fixes getting ODOOM building again and OQUAKE pickups working co…
dellams Mar 7, 2026
9b3d2bd
Got ODOOM and OQUAKE building again, still working on getting Quest p…
dellams Mar 8, 2026
b4f92e6
Added use_health_on_pickup, use_armor_on_pickup & use_powerup_on_pick…
dellams Mar 8, 2026
501aaf1
Improving inventory item desc/handing for ODOOM and OQUAKE and fixing…
dellams Mar 8, 2026
d6003c2
fixing pickup issues in ODOOM and OQUAKE
dellams Mar 8, 2026
dd21e30
nearly there! :) Odd health use bugs in inventory trying to fix.
dellams Mar 8, 2026
7618df1
nearly there! :) Odd health use bugs in inventory trying to fix.
dellams Mar 8, 2026
0accf78
OQUAKE nearly working, fixing bugs in send avatar/clan
dellams Mar 8, 2026
40b0444
OQUAKE now shows quests popup when you press Q. Also shows toast noti…
dellams Mar 8, 2026
aba6b73
Added new Quest Seed program to create Demo Quests for ODOOM & OQUAKE.
dellams Mar 8, 2026
855ec82
In OQUKE, made Quests async so load on background thread so dont hang…
dellams Mar 9, 2026
07b3d7e
Fixing bugs in the WEB5 STAR API Quest API, adding new quest tests, f…
dellams Mar 9, 2026
d447aa5
Fixing bugs in the WEB5 STAR API Quest API, adding new quest tests, f…
dellams Mar 9, 2026
33d8f75
Fixing Quests in ODOOM and OQUAKE and backend bugs for Quests API in …
dellams Mar 9, 2026
cfe91a1
Fixing more bugs in the quest system
dellams Mar 9, 2026
74c7fae
Lots done on quests
dellams Mar 9, 2026
e6c02d6
making progress with quests popup in ODOOM and OQUAKE
dellams Mar 10, 2026
191164f
making progress with quests popup in ODOOM and OQUAKE
dellams Mar 10, 2026
4d3a3a2
Quest popups improvements
dellams Mar 10, 2026
3d3fbc3
Quest popups coming together now! :)
dellams Mar 10, 2026
0ef3c5e
lots more progress on quests
dellams Mar 10, 2026
ce03f06
more fixes to the quest popups including backend fixes to Quest API i…
dellams Mar 10, 2026
88d9ea3
making good progress on the quest popup for ODOOM and OQUAKE, can now…
dellams Mar 10, 2026
acffab5
making good progress on the quest popup for ODOOM and OQUAKE, can now…
dellams Mar 11, 2026
632d14e
Improving OQUAKE & ODOOM Quest popups (OQUAKE now shows desc, sub-que…
dellams Mar 11, 2026
7d564ed
Improving OQUAKE & ODOOM Quest popups (OQUAKE now shows desc, sub-que…
dellams Mar 11, 2026
7164fc1
more progress on quests popups
dellams Mar 11, 2026
9c6d0d1
more progress on quests popups
dellams Mar 11, 2026
c71ea99
more progress on quest popups!
dellams Mar 11, 2026
319ff1b
Quests nearly done! :)
dellams Mar 11, 2026
13ae724
sooooo close now for quests! :)
dellams Mar 11, 2026
1db24b8
Improving layout of Quest popup in ODOOM.
dellams Mar 11, 2026
0ca50d6
Upgraded the Quest System/API so it now supports cross game dynamic o…
dellams Mar 11, 2026
75f75bb
Still fixing the new Quest popups for ODOOM and OQUAKE
dellams Mar 11, 2026
678de44
Nerly there
dellams Mar 11, 2026
e817383
More progress on quest popups.
dellams Mar 12, 2026
61d97e0
Improving layout of Quest popups in ODOOM and fixed the movement key …
dellams Mar 12, 2026
c0fdd22
More progress made
dellams Mar 12, 2026
439f4b4
More good progress :)
dellams Mar 13, 2026
9f8b960
objectives finally working in OQUAKE! :)
dellams Mar 13, 2026
313a1ec
More progress on Quake quest popup and quest system/api fixes. :)
dellams Mar 13, 2026
6eeacec
Moved the quest and objective models to the shared contracts project …
dellams Mar 13, 2026
bd289c6
Finally fixed the tab issue in the quake quest popup! :)
dellams Mar 13, 2026
9c3da6a
Quests phase 1 nearly there! :)
dellams Mar 13, 2026
96c3112
Starting to get LIIIIIIIIT! ;-)
dellams Mar 13, 2026
74a12dc
In ODOOM moved Subquests and PreReqs to their own screen to make room…
dellams Mar 14, 2026
6273293
Upgrading the quest tracker in ODOOM and OQuake.
dellams Mar 14, 2026
bef6850
OQUAKE can now toggle the quest tracker on/off and also highlight/sel…
dellams Mar 14, 2026
f6f613b
quest tracker nearly working right! :)
dellams Mar 14, 2026
1bd8c95
Quake quest popup and tracker done for now! :) fixed bugs in the clie…
dellams Mar 14, 2026
0818c2a
dooooooooooooooooooooooooooooooooooooooooooooooooom!
dellams Mar 14, 2026
7f0bf38
FINALLY got the ODOOM tracker working! lol
dellams Mar 14, 2026
432cb60
ODOOM/OQUAKE/STARAPIClient now persist the active quest/objective.
dellams Mar 14, 2026
6cd7248
Finally got quake building and not hanging again! Improved callbacks …
dellams Mar 15, 2026
9edcf09
Active Quests & objectives now persist lol
dellams Mar 15, 2026
0993659
kinda getting there, issues with persisting the correct quest/objective
dellams Mar 15, 2026
7365080
still trying to fix quests
dellams Mar 15, 2026
34258bb
FINALLY CRACKED IT! QUESTS AND OBJECTIVES NOW PERSISTING CORRECTLY! Y…
dellams Mar 15, 2026
1e4e81b
Tracker now shows Loading... in OQUAKE when its loading and sets corr…
dellams Mar 15, 2026
9f24c0e
Got OQUAKE building again and adding auto-beamin functionality
dellams Mar 15, 2026
31f4c22
Fixed a bug in ODOOM so it now selects the correct objective on loadi…
dellams Mar 15, 2026
c4adb8f
ODOOM now auto selects correct quest name and objective in tracker wh…
dellams Mar 15, 2026
024c31f
Autobeam in working! :)
dellams Mar 16, 2026
4b003f6
Refactoring the STARAPIClient so all seperate modules auth, profile, …
dellams Mar 16, 2026
f5feacb
fixing jwt auto renew and other things
dellams Mar 16, 2026
55138c3
docs: add .devin/wiki.json to steer DeepWiki
maxgershfield Mar 16, 2026
4cf4501
Merge pull request #356 from NextGenSoftwareUK/docs/deepwiki-api-oasi…
dellams Mar 16, 2026
dd2dc9c
Made inventory loading happen in background non blocking call for ODO…
dellams Mar 16, 2026
bd28e8a
Merge branch 'master' of https://github.com/NextGenSoftwareUK/OASIS
dellams Mar 16, 2026
f31b89d
Tidying up code and making so all use the same source of truth for st…
dellams Mar 16, 2026
0404b16
yay finally migrated star sync lib to STARAPIClient so everything is …
dellams Mar 16, 2026
0b311f6
Working on JWT Token Expiry issues
dellams Mar 16, 2026
340fc48
ODOOM now auto logging in and auto-renewing the JWT Token! yay! :)
dellams Mar 16, 2026
029e6c2
Nearly there! :)
dellams Mar 16, 2026
eacf42e
Fixed the oasistar.json format issue in ODOOM and also star debug sta…
dellams Mar 16, 2026
ded6d58
yay final fix for the ODOOM oasisdna.json format issue, now ODOOM and…
dellams Mar 17, 2026
fd3ad5c
LOTS done integrating new Quest Progress endpoint to track progress m…
dellams Mar 17, 2026
b248a35
Fixed web4 and web5 scripts so it stops any previous running processes.
dellams Mar 17, 2026
76b16c9
Merge in Linux scripts etc for ODOOM and Getting Started guides etc.
dellams Mar 17, 2026
467b39d
Merge remote-tracking branch 'origin/master'
dellams Mar 17, 2026
764b09f
Linux scripts & docs.
dellams Mar 17, 2026
4565090
Restored windows version.
dellams Mar 17, 2026
2f9e55c
Linux fixes for ODOOM and OQUAKE.
dellams Mar 17, 2026
08ac5d1
Fixing more bugs in ODOOM & OQUAKE for Linux.
dellams Mar 17, 2026
24d743d
Lots done making STAR CLI compatible with Linux/Mac
dellams Mar 18, 2026
bdc2e6c
Adding pause at end of all scripts so can see if any errors/success e…
dellams Mar 18, 2026
912bb75
Fixing lots of crossss platform issues in STARDNA, OASISDNA, STAR CLI…
dellams Mar 19, 2026
382cb65
last min fixes from the STARDNA work/improvements
dellams Mar 19, 2026
46007b1
More improvements to STAR CLI so can now pass command params to it. A…
dellams Mar 19, 2026
a4a3b7b
Making STAR non-interactive.
dellams Mar 19, 2026
5df5fc9
Continuing to improve STAR CLI by adding full CLI shell command/args …
dellams Mar 19, 2026
a1a4256
All commands in STAR CLI can now be called from script! :)
dellams Mar 20, 2026
89f14a0
Final non interactive mode work for STAR CLI, fixed Linux uninstaller…
dellams Mar 20, 2026
a492113
Changed STARAPIClient to not forward web4 calls from web5, now calls …
dellams Mar 20, 2026
6404585
Fixed bug in ODOOM where it crashed picking up keycards because quest…
dellams Mar 20, 2026
9fecdeb
updating ports.
dellams Mar 20, 2026
f391f84
quake fix
dellams Mar 20, 2026
fcbe170
ODOOM working again with quests on Linux finally! yay! :) lol
dellams Mar 21, 2026
e9476c0
making progress on ODOOM Linux
dellams Mar 21, 2026
06b6c60
making progress on ODOOM Linux
dellams Mar 21, 2026
e07f085
Yes! Quest objective updates in popup when completing them! in ODOOM!…
dellams Mar 22, 2026
d35e4da
WASTED A WHOLE DAY! :( Timer should be ok now
dellams Mar 23, 2026
080a8bf
fix build script
dellams Mar 23, 2026
059b816
Timer now fixed finally again! lol
dellams Mar 23, 2026
8aa06d1
oasistar.json now restored if deleted.
dellams Mar 23, 2026
11d827f
STARAPICLient restored
dellams Mar 23, 2026
b9fb6c7
Objective help text retored in popup
dellams Mar 23, 2026
b7bad0b
trying to fix tracker!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
dellams Mar 23, 2026
59a2dfc
Still trying to get the Quest Tracker to display correctly and update…
dellams Mar 23, 2026
1980ba5
More progress on Quests.
dellams Mar 24, 2026
2e7731e
Getting closer with Quests in ODOOM! lol
dellams Mar 24, 2026
2918960
Progress maybe?! Not sure anymore?! :()
dellams Mar 24, 2026
9505a39
FINALLY DID IT! GOT QUESTS WORKING WITH REALTIME TRACKER! THANK GOD F…
dellams Mar 25, 2026
7f0de28
Improving Quest UI ((moved quest desc to its own screen)
dellams Mar 25, 2026
ae70796
More Quest UI improvements in ODOOM, now uses tabs like inventory popup.
dellams Mar 25, 2026
741c22d
More UI improvements for the Quest UI in ODOOM
dellams Mar 25, 2026
0982acb
almost there! :)
dellams Mar 25, 2026
31e4c53
Fixing scripts for ODOOM and STARAPIClient
dellams Mar 25, 2026
ecbbed5
finally got the quest popup list working! :) yay!
dellams Mar 26, 2026
b4b1e3a
Migrated across Quest Detail changes from backup.
dellams Mar 26, 2026
2541f6f
Nearly there!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
dellams Mar 26, 2026
320937f
FINALLY QUESTS WORKING FULLY IN ODOOM! YAY! LOL
dellams Mar 26, 2026
e6c2dce
Removed flicker from quest list refresh/rendering when scrolling
dellams Mar 26, 2026
e331bf9
removed redundant oasisstar.dna
dellams Mar 26, 2026
47f83c7
linux fixes for OQUAKE
dellams Mar 26, 2026
60c57fb
trying to fix Linux OQUAKE hanging after beaming in/loading quests.
dellams Mar 26, 2026
962fb8e
Fixed scripts for windows
dellams Mar 27, 2026
d2fe695
Upgrading to .NET 10
dellams Mar 27, 2026
81cf303
Upgraded STARNET.DNA to .NET 10
dellams Mar 27, 2026
2223cfe
Got OQuake on Linux working again! :)
dellams Mar 27, 2026
7d34b89
Nearly there in OQUAKE, improving the UI and bug fixing! :)
dellams Mar 27, 2026
7c43c69
Added Progress Summary to Quest Popup in OQUAKE so like in ODOOM.
dellams Mar 27, 2026
3c0e914
Still trying to fix OQUAKE!
dellams Mar 27, 2026
685893a
Finally fixed the quest list in OQUAKE! :)
dellams Mar 27, 2026
376509a
Fixed more bugs in OQUAKE such as false pickups when starting a map a…
dellams Mar 27, 2026
7c126f4
yay OQUAKE done! :)
dellams Mar 27, 2026
0675033
added STARAPIClientNative support so can work offline natively with …
dellams Mar 28, 2026
05b471c
Updated all docs for OASIS Omniverse/Quest System/Shared Inventory/ST…
dellams Mar 28, 2026
842bd95
cross game powerups and docs
dellams Mar 28, 2026
703e8fb
cross game weapons
dellams Mar 28, 2026
2c9020e
Final bug fixes! :)
dellams Mar 28, 2026
9f8e55e
when pressing tab in OQUAKE the tracker no longer gets rendered disto…
dellams Mar 28, 2026
5838d6b
more doom and quake weapon mappings
dellams Mar 28, 2026
eb88572
Final changes to OQUAKE for now! ;-) Last bug was trying to get ODOOM…
dellams Mar 28, 2026
4f06640
Added comprehensive documentation for STAR CLI! :)
dellams Mar 28, 2026
392c2cd
Merge pull request #357 from NextGenSoftwareUK/powerups
dellams Mar 28, 2026
1adbfac
Delete Scripts/.local_api_processes.json
dellams Mar 28, 2026
6286e8b
Merge pull request #358 from NextGenSoftwareUK/Linux
dellams Mar 28, 2026
62de22e
- Added scripting/AI support to STAR CLI with non interactive mode.
dellams Mar 29, 2026
ece30ff
Merge remote-tracking branch 'origin/Linux' into Linux
dellams Mar 29, 2026
97cd35c
Merge pull request #359 from NextGenSoftwareUK/Linux
dellams Mar 29, 2026
a18c12c
Merge pull request #360 from NextGenSoftwareUK/NET10
dellams Mar 29, 2026
c980348
Updated .net version to 10.0.104 in global.json
dellams Mar 29, 2026
8e915df
Added OASIS Hyperdrive v2 settings to default OASISDNA.
dellams Mar 29, 2026
e384234
Added some missing test results.
dellams Mar 31, 2026
d1115b6
Added missing files!
dellams Mar 30, 2026
8b9bd96
Fixed STARAPIClient build on Windows.
dellams Mar 31, 2026
f211235
Fixing build issues on windows for ODOOM and OQUAKE
dellams Mar 31, 2026
e905d47
Getting it working on Windows & Linux at same time! ;-) lol
dellams Apr 1, 2026
3bebfcd
removed redundant files
dellams Apr 1, 2026
d377c2a
Merge pull request #361 from NextGenSoftwareUK/windows
dellams Apr 1, 2026
7d6b48b
Fixed build error in OQUAKE
dellams Apr 1, 2026
0d65d67
Integrated avatar inventory into STAR CLI and improved quest list com…
dellams Apr 2, 2026
31cc3e9
Updated "quest create" and "quest update" commands in STAR CLI to all…
dellams Apr 2, 2026
271cb7a
Upgraded GeoHotSpot API/System to also support Text, Image, Video & W…
dellams Apr 2, 2026
761e920
upgrading geohotspots and quests
dellams Apr 3, 2026
c83cb42
Merge pull request #362 from NextGenSoftwareUK/geohotspotandquestupgr…
dellams Apr 3, 2026
c90af0a
Tidied up STAR CLI welcome message, added Smart Bricks to dependency …
dellams Apr 3, 2026
02db5c4
Merge pull request #363 from NextGenSoftwareUK/geohotspotandquestupgr…
dellams Apr 3, 2026
10498e3
Fixed a bug in QuestAPI when creating quests the QuestType was not be…
dellams Apr 4, 2026
21a6d91
BUMPED VERSIONS PREPARRING FOR RELEASE
dellams Apr 4, 2026
c617160
Added STARAPIClient to main OASIS solution & fixed STAR CLI publish i…
dellams Apr 5, 2026
65c390e
Brought the ❤️ back into The OASIS/STAR! ;-)
dellams Apr 5, 2026
8102921
Fixed layout issues for OQUAKE in Windows when popups and fonts are t…
dellams Apr 7, 2026
f2fd4f7
Merge branch 'master' of https://github.com/NextGenSoftwareUK/OASIS
dellams Apr 7, 2026
3854d76
Remove WAD files and ignore them
dellams Apr 7, 2026
f6ab872
Merge remote-tracking branch 'origin/master'
dellams Apr 7, 2026
37c0277
Remove wad files
dellams Apr 7, 2026
285bdf2
fixes
dellams Apr 7, 2026
9d4c159
fixed web4 oasis api and web5 star api
dellams Apr 8, 2026
7f58dc4
Merge remote-tracking branch 'origin/master'
dellams Apr 7, 2026
8e155ce
fixed a bug in avatarcontroller for GetAvatarDetail endpoints where o…
dellams Apr 9, 2026
29afc96
Fixed bugs in NFT and Avatar API, Added CollectNFT, CollectGeoNFT me…
dellams Apr 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 9 additions & 0 deletions .devin/wiki.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"repo_notes": [
{
"content": "Use api.oasisweb4.one (not .com) as the canonical base URL for the hosted OASIS API in all examples, code snippets, and documentation. Base URL: https://api.oasisweb4.one, API prefix: https://api.oasisweb4.one/api, Swagger: https://api.oasisweb4.one/swagger/index.html.\n\nIn the Getting Started / Developer Guides section, document both paths clearly:\n1. Using the remote API: Users can call the hosted API at https://api.oasisweb4.one without cloning or running the repo. Include: register (POST /api/avatar/register), verify-email, authenticate (POST /api/avatar/authenticate), then use the JWT in Authorization header for other endpoints. No .NET SDK or local setup required.\n2. Running locally: Clone, restore, build, and run the WebAPI project for local development.",
"author": "OASIS docs"
}
],
"pages": []
}
27 changes: 26 additions & 1 deletion .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,31 @@ jobs:
dotnet test "STAR ODK/NextGenSoftware.OASIS.STAR.WebAPI.IntegrationTests/NextGenSoftware.OASIS.STAR.WebAPI.IntegrationTests.csproj" --no-build --verbosity normal
dotnet test "STAR ODK/NextGenSoftware.OASIS.STAR.WebUI.IntegrationTests/NextGenSoftware.OASIS.STAR.WebUI.IntegrationTests.csproj" --no-build --verbosity normal

# STARAPIClient Unit + Integration + Harness
test-starapi-client:
name: Test STARAPIClient
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}

- name: Run STARAPIClient test suite
shell: pwsh
run: |
& "OASIS Omniverse/STARAPIClient/run_star_api_test_suite.ps1" -Configuration Release -KillStaleTestHosts $true
Comment thread
cursor[bot] marked this conversation as resolved.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

STARAPIClient tests likely fail on Ubuntu

High Severity

The new test-starapi-client job runs run_star_api_test_suite.ps1 on ubuntu-latest via pwsh, but related STARAPIClient scripts in the same area use Windows-only tooling/paths (e.g., C:\..., MSVC). If run_star_api_test_suite.ps1 has similar assumptions, the workflow will fail and block build-and-package via needs.

Additional Locations (1)

Fix in Cursor Fix in Web

- name: Upload STARAPIClient test artifacts
uses: actions/upload-artifact@v4
if: always()
with:
name: starapiclient-test-results
path: OASIS Omniverse/STARAPIClient/TestResults/
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CI artifact upload path with spaces needs quoting

Medium Severity

The path value OASIS Omniverse/STARAPIClient/TestResults/ in the upload-artifact step contains a space but isn't quoted. While YAML itself treats this as a string, some versions of actions/upload-artifact may not resolve the path correctly with unquoted spaces, potentially causing the artifact upload to silently fail (the step uses if: always() so it won't block the workflow, but results won't be captured).

Fix in Cursor Fix in Web

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Artifact upload path with spaces needs quoting

Medium Severity

The path value for the upload-artifact action is OASIS Omniverse/STARAPIClient/TestResults/ which contains a space. While GitHub Actions YAML values don't always require quoting, the upload-artifact action may fail to resolve paths with unquoted spaces depending on the runner's glob expansion. The run step on line 155 correctly uses & with quotes for the PowerShell invocation, but the artifact path lacks quotes, risking a failed or empty artifact upload.

Fix in Cursor Fix in Web

retention-days: 30

# Unity Tests (if Unity is available)
unity-tests:
name: Unity Tests
Expand All @@ -160,7 +185,7 @@ jobs:
build-and-package:
name: Build and Package
runs-on: ubuntu-latest
needs: [test-oasis-architecture, test-onode, test-star-odk, integration-tests]
needs: [test-oasis-architecture, test-onode, test-star-odk, integration-tests, test-starapi-client]
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master'

steps:
Expand Down
1,140 changes: 1,140 additions & 0 deletions .gitignore

Large diffs are not rendered by default.

49 changes: 49 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# OASIS — notes for AI / Cursor agents

## Root cause only — no hacks, fallbacks, or workarounds (all code)

Applies to **every change** in this repo — C#, C++, ZScript, HTTP/API, DB, scripts — not only packaging.

**Do not** paper over bugs with parallel code paths: legacy API “if new fails,” silent `catch`, duplicate “safety” updates, un-spec’d retries, or optional `dlsym` for symbols that are part of the shipped contract. That hides **broken invariants** and makes behaviour depend on which path ran.

**Do** identify the **one invariant** that should hold, fix **the layer that broke it** (await ordering, cache invalidation, correct id persisted, deploy artifact match), use **`OASISResult<T>`** / real errors, and add **tests or build checks** where they lock the invariant in.

**Deploy / native:** missing `star_api_*` symbol → rebuild STARAPIClient, run full `BUILD_ODOOM.sh`, verify exports in scripts — see **`OASIS Omniverse/Docs/ODOOM_UZDoom_Build_Sync.md`**.

Full policy (code patterns + build): **`Docs/Devs/AGENT_Root_Cause_No_Fallbacks.md`**. Read it before adding shims or “fallbacks.”

## If the chat “crashed” or context was truncated

Resume from **files in git**, not from chat history. Read:

| Topic | Doc / entry point |
|--------|-------------------|
| **Root cause vs hacks / fallbacks** (policy for agents) | `Docs/Devs/AGENT_Root_Cause_No_Fallbacks.md` |
| STAR CLI shell / `--non-interactive` / `--json` | `Docs/Devs/STAR_CLI_NonInteractive.md` |
| STAR CLI hub (users & devs, Light/templating, STARNET, AI/MCP) | `Docs/Devs/STAR_CLI_Comprehensive_Guide.md` |
| **Session handoff** (what’s done, what’s next, file map) | `Docs/Devs/STAR_CLI_SessionHandoff.md` |
| **ODOOM quest list + STAR** (CVars, scroll, do-not-break invariants) | `OASIS Omniverse/Docs/ODOOM_Quest_List_STAR.md` |
| **ODOOM vs UZDoom** (why HUD/timer/toggle edits seem ignored; copy step) | `OASIS Omniverse/Docs/ODOOM_UZDoom_Build_Sync.md` |
| **`star_api.so` / `star_api.h` drift** (undefined symbol at launch; fix deploy, not game shims) | `OASIS Omniverse/Docs/ODOOM_UZDoom_Build_Sync.md` (heading: STAR native library must match star_api.h) |
| **STAR `star_transport` remote vs native** (size, AOT, BootLoader, split-build recommendation) | `OASIS Omniverse/Docs/STAR_API_Native_Transport_Architecture.md` |
| **STAR Quest system** (WEB5 API, STARAPIClient, `star_api_*`, game hooks) | `OASIS Omniverse/Docs/STAR_Quest_System_Developer_Guide.md` |
| **OQuake / ODOOM STAR user guide** (beam-in, inventory, quest keys) | `OASIS Omniverse/Docs/STAR_Games_User_Guide.md` |

For a **new chat**, paste: goal + “see `Docs/Devs/STAR_CLI_SessionHandoff.md`”.

## Conventions (this repo)

- Prefer **real implementations**; avoid TODOs/placeholders for shipping paths.
- **No workaround-first coding** — see `Docs/Devs/AGENT_Root_Cause_No_Fallbacks.md` (section A: general code).
- OASIS APIs often use **`OASISResult<T>`** — keep that pattern for new surface area.
- **NextGenSoftware-Libraries** lives as a **sibling** of this repo (e.g. `../NextGenSoftware-Libraries`), not under `OASIS/external-libs`.

## High-churn STAR CLI paths

- `STAR ODK/NextGenSoftware.OASIS.STAR.CLI/Program.cs` — command router (very large).
- `STAR ODK/NextGenSoftware.OASIS.STAR.CLI/StarCliInvocation.cs` — global flags.
- `STAR ODK/NextGenSoftware.OASIS.STAR.CLI/StarCliShellOutput.cs` — JSON/errors.
- `STAR ODK/NextGenSoftware.OASIS.STAR.CLI/StarCliStarnetNonInteractiveGuard.cs` — argv checks before `ShowSubCommandAsync` predicates.
- `STAR ODK/NextGenSoftware.OASIS.STAR.CLI.Lib/StarnetUiScriptedCreateCli.cs` — generic argv → `CustomCreateParams` for scripted create; `StarCliNonInteractiveCreateKeys.cs` + `STARNETUIBase.CreateAsync` consume it. Prefer extending these over per-holon `Program.cs` forks (see `Docs/Devs/STAR_CLI_NonInteractive.md` § Generic design).
- `STAR ODK/NextGenSoftware.OASIS.STAR.CLI.Lib/STARNETUIBase.cs` — wizards / `GetConfirmation` (non-interactive work often lands here).
- Shared prompts: `NextGenSoftware-Libraries/NextGenSoftware.CLI.Engine/CLIEngine.cs` (`NonInteractive`, `AssumeYes`, etc.).
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
<Authors>Zhen Liu</Authors>
<NeutralLanguage>en-NZ</NeutralLanguage>
<PackageLicenseUrl>https://github.com/touchjet/JsonRpc20.Client/blob/master/LICENSE</PackageLicenseUrl>
Expand Down
2 changes: 1 addition & 1 deletion Archived/HOLONET/NextGenSoftware.HoloNET.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netstandard2.1</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

</Project>
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
</PropertyGroup>

</Project>
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<PackageId>NextGenSoftware.Utilities</PackageId>
<Company>NextGen Software Ltd</Company>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<PackageId>NextGenSoftware.WebSocket</PackageId>
<Company>NextGen Software Ltd</Company>
Expand Down Expand Up @@ -47,8 +47,8 @@
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\NextGenSoftware-Libraries\NextGenSoftware Libraries\NextGenSoftware.ErrorHandling\NextGenSoftware.ErrorHandling.csproj" />
<ProjectReference Include="..\NextGenSoftware-Libraries\NextGenSoftware Libraries\NextGenSoftware.Logging\NextGenSoftware.Logging.csproj" />
<ProjectReference Include="..\..\NextGenSoftware-Libraries\NextGenSoftware.ErrorHandling\NextGenSoftware.ErrorHandling.csproj" />
<ProjectReference Include="..\..\NextGenSoftware-Libraries\NextGenSoftware.Logging\NextGenSoftware.Logging.csproj" />
</ItemGroup>

<ItemGroup>
Expand Down
File renamed without changes.
51 changes: 51 additions & 0 deletions Docker/Dockerfile.clean
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Use the official .NET 9 runtime as base image
FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS base
WORKDIR /app
EXPOSE 8080
EXPOSE 8081

# Use the .NET 9 SDK for building
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build

# Project references resolve NextGenSoftware-Libraries as a sibling of the OASIS repo root
# (three levels up from e.g. OASIS Architecture/.../Common). Build from the directory that
# contains BOTH checkouts, for example:
# cd /path/to/Source
# docker build -f OASIS/Docker/Dockerfile.clean -t oasis-star-webapi .
# If your OASIS folder is not named "OASIS", pass: --build-arg OASIS_DIR=YourFolderName
ARG OASIS_DIR=OASIS
WORKDIR /build
COPY ${OASIS_DIR}/ /build/oasis-root/
COPY NextGenSoftware-Libraries/ /build/NextGenSoftware-Libraries/

# HoloOASIS.csproj references ..\..\..\..\holochain-client-csharp\ = sibling of OASIS repo root (/build), not under Providers/.
ARG HOLOCHAIN_REPO=https://github.com/NextGenSoftwareUK/holochain-client-csharp.git
RUN apt-get update && apt-get install -y git \
&& git clone --depth 1 "${HOLOCHAIN_REPO}" /build/holochain-client-csharp \
&& apt-get clean && rm -rf /var/lib/apt/lists/*

WORKDIR "/build/oasis-root"

# Restore and build
RUN dotnet restore "STAR ODK/NextGenSoftware.OASIS.STAR.WebAPI/NextGenSoftware.OASIS.STAR.WebAPI.csproj"
RUN dotnet build "STAR ODK/NextGenSoftware.OASIS.STAR.WebAPI/NextGenSoftware.OASIS.STAR.WebAPI.csproj" -c Release -o /app/build

# Publish the application
FROM build AS publish
WORKDIR "/build/oasis-root"
RUN dotnet publish "STAR ODK/NextGenSoftware.OASIS.STAR.WebAPI/NextGenSoftware.OASIS.STAR.WebAPI.csproj" -c Release -o /app/publish /p:UseAppHost=false

# Final stage
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .

# Set environment variables
ENV ASPNETCORE_ENVIRONMENT=Production
ENV ASPNETCORE_URLS=http://+:8080

# Health check
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
CMD curl -f http://localhost:8080/api/health || exit 1

ENTRYPOINT ["dotnet", "NextGenSoftware.OASIS.STAR.WebAPI.dll"]
33 changes: 14 additions & 19 deletions Dockerfile.star-api → Docker/Dockerfile.star-api
Original file line number Diff line number Diff line change
Expand Up @@ -6,34 +6,29 @@ EXPOSE 8081

# Use the .NET 9 SDK for building
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build
WORKDIR /src

# Copy the entire OASIS project structure
COPY . .
# Same layout as Dockerfile.clean: build context = parent folder containing OASIS + NextGenSoftware-Libraries.
# docker build -f OASIS/Docker/Dockerfile.star-api -t oasis-star-api .
ARG OASIS_DIR=OASIS
WORKDIR /build
COPY ${OASIS_DIR}/ /build/oasis-root/
COPY NextGenSoftware-Libraries/ /build/NextGenSoftware-Libraries/

# Copy external libraries to a location within the build context
COPY external-libs/NextGenSoftware-Libraries/NextGenSoftware\ Libraries/ NextGenSoftware-Libraries/NextGenSoftware\ Libraries/
# Same path as Dockerfile.clean: ..\..\..\..\holochain-client-csharp from HoloOASIS = /build/holochain-client-csharp
ARG HOLOCHAIN_REPO=https://github.com/NextGenSoftwareUK/holochain-client-csharp.git
RUN apt-get update && apt-get install -y git \
&& git clone --depth 1 "${HOLOCHAIN_REPO}" /build/holochain-client-csharp \
&& apt-get clean && rm -rf /var/lib/apt/lists/*

# Clone holochain-client-csharp from GitHub
RUN apt-get update && apt-get install -y git
RUN git clone https://github.com/NextGenSoftwareUK/holochain-client-csharp.git temp-holo
RUN mkdir -p "Providers/Network/NextGenSoftware.OASIS.API.Providers.HoloOASIS/holochain-client-csharp"
RUN cp -r temp-holo/* "Providers/Network/NextGenSoftware.OASIS.API.Providers.HoloOASIS/holochain-client-csharp/"

# Clean up
RUN rm -rf temp-holo
RUN apt-get clean && rm -rf /var/lib/apt/lists/*

# Build the STAR WebAPI project from the root directory
WORKDIR "/src"
WORKDIR "/build/oasis-root"

# Restore and build
RUN dotnet restore "STAR ODK/NextGenSoftware.OASIS.STAR.WebAPI/NextGenSoftware.OASIS.STAR.WebAPI.csproj"
RUN dotnet build "STAR ODK/NextGenSoftware.OASIS.STAR.WebAPI/NextGenSoftware.OASIS.STAR.WebAPI.csproj" -c Release -o /app/build

# Publish the application
FROM build AS publish
WORKDIR "/src"
WORKDIR "/build/oasis-root"
RUN dotnet publish "STAR ODK/NextGenSoftware.OASIS.STAR.WebAPI/NextGenSoftware.OASIS.STAR.WebAPI.csproj" -c Release -o /app/publish /p:UseAppHost=false

# Final stage
Expand All @@ -49,4 +44,4 @@ ENV ASPNETCORE_URLS=http://+:8080
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
CMD curl -f http://localhost:8080/api/health || exit 1

ENTRYPOINT ["dotnet", "NextGenSoftware.OASIS.STAR.WebAPI.dll"]
ENTRYPOINT ["dotnet", "NextGenSoftware.OASIS.STAR.WebAPI.dll"]
File renamed without changes.
48 changes: 0 additions & 48 deletions Dockerfile.clean

This file was deleted.

Loading
Loading