-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Inferno Integration #46
base: feature/inferno
Are you sure you want to change the base?
[WIP] Inferno Integration #46
Conversation
server/src/mikro-orm.config.ts
Outdated
allowGlobalContext: false, | ||
debug: true, | ||
entities: [Save, User, WorldMapCell], | ||
debug: false, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we please revert this change for this PR?
server/package.json
Outdated
@@ -28,6 +28,7 @@ | |||
"bcrypt": "^5.1.1", | |||
"chalk": "^5.3.0", | |||
"dotenv": "^16.3.1", | |||
"install": "^0.13.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we remove this? It doesn't seem to be used anywhere across the codebase
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should also revert the changes to package-lock.json
After defeating Descent, we create a new "inferno"-type save, which is stored to the saves table. Default saves now generate a baseid_inferno which is assigned to the inferno base after one is obtained. Loot gained from the descent is stored in the user's main-save "iresources" field, and the resources are linked between the main yard's "iresources" and the inferno yard's "resources"
This is a dump of Original Assets, which did not go through any sort of re-creation process (to the best of my knowledge), which we have recovered
These are assets which had to be re-created and have been heavily edited to match as closely as possible to their original counterparts. Recreated assets are not found assets, and will be replaces with the true original assets as they are recovered These may appear slightly buggy or visually unappealing due to the miserable nature of trying to preserve sprites which end up in a terrible condition like this
These shadows are NOT permanent, they are NOT re-creations, they are ONLY present to meet the game's criteria. They will be replaced or replicated as needed
Medium Inferno Portraits for Inferno Monsters (RECREATED!!!! NOT ORIGINAL!!!!!) ORIGINAL compound sprites
When loading a base via loadBase.ts, we protect the inferno base stats like the Locker and Resources from being overwritten by the main yard. InfernoMonsters.ts now properly handles bringing monsters from the Inferno into the main yard. Removed pointless code in baseSave.ts and removed leftover comments/logging from baseLoad.ts
Added Building Buttons for inferno buildings from the Wiki, renamed animations to be correct Removed temporary Magma Tower and Quake Tower assets, set temporary shadows (I'm not worrying about shadows until later)
Fixed a descent error by adding a check to see if the BaseID passed by the Save request sent by the Descent base was a Descent base as well. Previously the check was done assuming that the only value passed would be the BaseSaveID
Forgot to add the BaseID check in a different line.
save = await loadBuildBase(ctx, authSave.baseid_inferno.toString()); | ||
if (save && save.saveuserid !== user.userid) { | ||
throw saveFailureErr; | ||
} | ||
} else { | ||
save = await loadViewBase(ctx, requestBody.baseid) | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ignore the comment I left here and deleted - misread something
Some refinement was done to how the Inferno yard is linked to the Main yard. baseLoad sets the "underhalLevel" stat to 1, since it's required by any inferno building in the main yard, and it seems only a level 1 Under Hall is required for upgrades/building. This will be updated if I'm wrong. Inferno Resources are now properly linked and calculated between the two bases. Inferno yards will update main yard iresources on update, and main yards will update inferno yard resources on update (such as building chaos weapons or a quake tower). Other syncing fixes, like for credits, have been added. processDescentBase.ts was created to refactor the large block of code in baseSave.ts which handled instances where a save did not exist yet the save was a descent baseID. Also Champions who are hurt in the descent and monsters who are flinged no longer completely heal once you return to the main yard (also, inadvertantly, now monsters flung at all are now accounted for, even in MR) inferno quests are no longer overwritten by main yard quests, locker and academy data is also synced between the two bases ()
estimated reproductions of incubator, blast tower, and level 3-10 coal harvester + placeholder shadows. Replications are just to hold place until inferno is further recovered.
The initial bug with loading demonstration videos was caused by the "videoURL" to point to an "/assets/video" directory with no URL. This lead to a Security Error, as flash tries to access a local URL instead of a networked one. This changes the client to search for the demo vids from a URL. Reproduction demo vids are also included here.
No description provided.