An in-dev game that I plan to make a shooter game out of.
.github | ||
.vscode | ||
marketing | ||
src | ||
tests | ||
.env.example | ||
.eslintrc | ||
.gitignore | ||
aftman.toml | ||
default.project.json | ||
mantle.yml | ||
package.json | ||
readme.md | ||
tsconfig.json | ||
yarn.lock |
Goopler
An in-dev game that I plan to make a shooter game out of.
For goop we live, for goop we die.
— reidlab
Setup
Installing
yarn install
Using
yarn watch
and yarn serve
, followed by a connection to Rojo.
Deployment
When you first setup this repository, you probably want to add your .ROBLOSECURITY
cookie along with MANTLE_AWS_ACCESS_KEY_ID
and MANTLE_AWS_SECRET_ACCESS_KEY
into the .env
file for automatic deployment with Mantle. You should also change the bucket names in ./github/workflows/deploy.yml
. The thing is, your .ROBLOSECURITY
cookie is locked to your region, so depending on what country you get from github actions, your deployment will fail. I recommend adding a self-hosted runner.
Hacks
- I get a strange error about private identifiers in
./src/ReplicatedStorage/ecs/state.ts
- I decided to omit the "TS" folder from
./default.project.json:40
due to the script override not working in Health.server.ts in StarterCharacterScripts.
Todo
High priority
- Fix automatic deployment.
.ROBLOSECURITY
is region locked, so we have to change our region somehow. In the morning, I'm gonna follow this guide: https://github.com/reidlabwastaken/goopler/settings/actions/runners/new?arch=arm64&os=linux, and do this shit with my raspberry pi - Add tests
- Add guns. Try it in default roblox-ts and slowly reimplement it into our component system
Medium priority
- Crouching
- Animations
- Change remote state to a provider where I dont have to worry about money
- Seperate dev&prod environments (maybe later??? the game is very early stage so idk)
- Migrate todo to somewhere else like the issues tab
Low priority
- Camera bobble
- Add the bound tags in
./src/ReplicatedStorage/ecs/boundTags.ts
- Cooler sprinting!! (Tween fov and speed)
- Crouching?
Fixes
High Priority
- Currently, when resetting, sometimes your health goes back up. This is due to the reconciliation of health. Simply put, your health is not being set to zero inside of our entity component system, due to us not having the reset event currently like that. See it here: StarterGui.SetCore It uses BindableEvents and stuff idk