181 Commits (b51f5cbf692240c8eea54470b73c71f99cef106a)

Author SHA1 Message Date
Up 3ed5f41d58
make server automatically create DB schema if not exists (#5)
* add default values for CLI args

* add development docker compose file

* prevent crash if userdata dir does not exist

* accounts, acccountStats

* account stats and create db indices

* compensations and daily runs

* ensure uniqueness of daily seed

* start on port 8001 by default for client parity

* make generated schema match production

* sort imports
8 months ago
maru fadd10602a
Don't log ErrNoRows in savedata 8 months ago
maru 192b777ac3
Set ArgonMaxInstances to number of cores 8 months ago
maru 0ead2da2da
Remove unused endpoint game/playercount 8 months ago
Up 405a578e8c manually parse all save states for now 8 months ago
Up 0d6539a87b
continue on existing save (#3)
* long blob

* fix continue

* one slot only?

* fallback if there is no slot data yet

* Revert "one slot only?"

This reverts commit 20997e9cd8.
8 months ago
Up 1f95f7c042
hotfix: move save data to DB (#2)
* start reading save data from DB

* finish migration code

* remove leftover dir creation

* fix import cycle

* remove more dir creation

* update gitignore

* fix pk

* better table creation

* use REPLACE INTO

* fix typo
8 months ago
maru a087234aa8
Replace usernameFromRequest 8 months ago
Flashfyre c0a23079fa Re-implement fix for data overwrites 8 months ago
Flashfyre 8a17845d42 Revert "Fix underlying issue with save override prevention"
This reverts commit c12c770844.
8 months ago
Flashfyre c12c770844 Fix underlying issue with save override prevention 8 months ago
maru 512a24e5c3
Remove anti cheat 8 months ago
Flashfyre cde572d626 Revert "Fix data override prevention on update"
This reverts commit 52756fdba3.
8 months ago
Flashfyre 52756fdba3 Fix data override prevention on update 8 months ago
maru 786e947e09
Change 'banned' to 'limited 8 months ago
maru 8481626193
Relicense under AGPL 8 months ago
maru 235fb9c91c
Add copyright notice to files 8 months ago
maru e8240c9c38
Rename to rogueserver 8 months ago
maru b52abbf7fe
Ban if daily score over 20000 8 months ago
maru e184e9da91
Ban if vouchers over a certain threshold 8 months ago
Flashfyre bc8084b70b Increment server version 8 months ago
maru ec33952aaa
Simplify variable declaration 8 months ago
maru cbcc68f8e4
Add password changes 8 months ago
maru 4ce5a0198d
Don't check token length twice in Logout 8 months ago
maru 1ea2829f63
Increase stat refresh interval to 30 seconds 8 months ago
maru 65e7696e7e
Use tokenFromRequest in handleAccountLogout 8 months ago
maru 2656c0a033
Enforce HTTP method on endpoints 8 months ago
Flashfyre 2f8c2d3f07 Match trainer and secret ID on update for data integrity 8 months ago
maru 849bc601f0
Remove get prefix from certain function names 8 months ago
maru 768900d885
Change seedCompletions to dailyRunCompletions 8 months ago
maru 7e3ba249df
Move httpError to common.go 8 months ago
maru fa5dcb0052
Use ServeMux router instead of switch statement 8 months ago
maru da572ebdd9
Add default case to router 8 months ago
maru 96f8a74396
Unduplicate more code 8 months ago
maru 1de3ce72e4
Reuse zstandard encoder 8 months ago
maru 697c5335d7
Prevent writing empty save files 8 months ago
maru b00ed4c0b9
Use WriteFile instead of stream writing to files 8 months ago
maru 8f51cd826c
Run formatter on code 8 months ago
maru 4a017b0f32
Clean up recent API changes 8 months ago
Flashfyre 6acbb6448a Protect against cross-session overwrites 8 months ago
maru 75cf6f3ab1
Use Sprintf instead of encoding UUIDs to hex 8 months ago
maru 6816df3158
Set content type of JSON responses 8 months ago
maru f7ab2719a2
Don't make rankings endpoint update user activity 8 months ago
maru 1d54c1ad64
Use channels to rate limit argon2 8 months ago
maru fbd4a60a4a
Add mutex to deriveArgon2IDKey 8 months ago
maru 0fec7cb4c3
Revert "Serve game content and API"
This reverts commit 6bd7deb3de.
8 months ago
maru 6bd7deb3de
Serve game content and API 8 months ago
Flashfyre a36a8f5be9 Update schema and version for variant update 8 months ago
maru 62102ab4fd
Use forms instead of JSON for login/register requests 8 months ago
maru 35641e420b
Clean up compensation code 8 months ago
maru 09abd1fb66
Fix bug with /savedata/clear endpoint 8 months ago
maru 136aac6614
Sleep for one second in recordNewDaily task 8 months ago
maru 9f1349d6a0
Move gob Register functions to pokerogue-server.go 8 months ago
maru dbcc0d04e6
Add new exit handler 8 months ago
maru 5916c9e5e5
Use UTC for cron 8 months ago
maru 9477889390
Use better cron package 9 months ago
Flashfyre 420a4d17b3 Fix version check for outdated client 9 months ago
Flashfyre d232773ecd Add game version check to save (WiP) 9 months ago
maru 25abf4914b
Use TokenSize const in api common.go 9 months ago
maru 39199dc1b1
Move consts in account package to common.go 9 months ago
maru f395dc145b
Code consistency 9 months ago
maru 98ecbbb529
Rename 'recordNewRun' to 'recordNewDaily' 9 months ago
maru c3a3746639
Clean up daily package 9 months ago
maru 1f0f38d38e
Move endpoint categories into their own packages 9 months ago
maru 522ce9f4fa
Update GitHub link 9 months ago
maru 10606ebb13
Consistency in handleSavedataClear 9 months ago
maru 2d5f777efd
Move argon2 functions to its own file 9 months ago
Flashfyre a4014feea8 Track player vouchers 9 months ago
Flashfyre ba7ab22d4d Fix voucher compensation logic 9 months ago
maru 72151d9c01
Fix new save reader/writer functions 9 months ago
maru 9a0d4a2698
Defer close calls in save data reader functions 9 months ago
maru 1b5da99cda
Make save reading/writing more efficient 9 months ago
maru af5f9798ae
Fix comment indentation in generic.go 9 months ago
maru 5893350784
Pass struct to handleAccountLogin and handleAccountRegister 9 months ago
maru 422a850354
Move httpError func to generic.go 9 months ago
maru 01c037a7a2
Use JSON encoders instead of Marshal 9 months ago
Flashfyre 992864b785 Add voucher compensation logic 9 months ago
maru 0f8fc0085e
Change certain struct field names back to what they were 9 months ago
maru 85055d2921
Fix variable re-use bug 9 months ago
maru d97e07b522
Fix condition to read save data from request body 9 months ago
maru 977a05049e
Add missing return 9 months ago
maru 5778675171
Major refactor of API 9 months ago
maru 0edfeab3ca
Various styling changes 9 months ago
maru 80a2c637d2
Indentation consistency near calls to rand.Read 9 months ago
maru 93bb792964
Don't include http error code in log 9 months ago
maru 0eed542b2e
Add http error logging 9 months ago
Flashfyre dcb1c76370 Add endpoints for stats 9 months ago
Flashfyre 99d3490172 Update account stats on system save 9 months ago
maru d12a008259
Various changes 9 months ago
Flashfyre 253e462536 Cache player count instead of querying per user 9 months ago
Flashfyre 8ad0f396ea Add seed check to daily run update condition 9 months ago
Flashfyre eb671f2cb7 Update account activity on rankings load 9 months ago
Flashfyre 7d23859dea Add player count handler 9 months ago
Flashfyre 53ccdc5921 Add weekly rankings and ranking pagination support 9 months ago
Flashfyre 4419ead54c Delete session on loss 9 months ago
Flashfyre a0f8ab658f Fix daily run scheduler not working 9 months ago
Flashfyre be04408336 Update random daily seed logic 9 months ago
Flashfyre 2cb7be52eb Change daily seed generation and update schema for recording failed daily runs 10 months ago
Flashfyre 4710617f23 Add limit and pagination to rankings query 10 months ago
Flashfyre ff98047caa Add daily run rankings 10 months ago