unknown
e4cf64d7bc
started docker image
2023-06-20 02:12:15 -05:00
CPunch
727c68aef3
server: split login/ and shard/
2023-03-27 17:02:13 -05:00
CPunch
70e42b5d79
server/shard: added UpdatePlayer(), which should be used whenever player struct state needs to be updated to prevent race conditions
2023-03-26 21:08:13 -05:00
CPunch
bb29a988b3
landwalker achieved!
...
- the shard's ip sent to the client via the login server is currently hardcoded in config/config.go
- no packets other than P_CL2FE_REQ_PC_ENTER and P_CL2FE_REQ_PC_LOADING_COMPLETE are supported via the shard server
2023-03-22 17:07:16 -05:00
CPunch
5b2a8b838e
major refactoring: db.Player is now core.Player
...
- misc. cleanup
- core/db/players.go: works with core.Player types, will also grab inventory table
2023-03-22 00:30:58 -05:00
CPunch
735bdc5b36
protocol: added CNPeer
...
- moved Peer from the server package to the protocol package, it was also renamed to CNPeer as most fusionfall specific constants in the client use the 'CN' prefix.
2023-03-18 16:40:20 -05:00
CPunch
1357de99aa
server: started ShardServer
...
- protocol: added GenSerialKey() which securely generates an EnterSerialKey
- login server accepts a shard via LoginServer.AddShard()
- login server will pass LoginMetaData to the selected shard via ShardServer.QueueLogin()
- misc. refactoring
2023-03-17 16:27:47 -05:00
CPunch
7a26ffdcf7
server/peer: wrap 'defer pool.Put()' in a closure
2023-03-11 15:02:01 -06:00
CPunch
cbe308a0bd
misc. db.GetPlayers() result is now truncated
2023-03-11 03:28:11 -06:00
CPunch
c62ed5d101
db: GetPlayerInventorySlots() can just build the array the first pass, no?
2023-03-11 02:06:39 -06:00
CPunch
a0a108a605
more better
2023-03-11 01:48:26 -06:00
CPunch
850dd59967
protocol/packet: accept structs by value for encoding
...
- server/loginServer: no longer sending packets by pointer, except in cases like AcceptLogin(), which operates on a sent structure slice. since these are already allocated, no need to copy them
2023-03-11 00:24:20 -06:00
CPunch
00fa94162c
server: refactoring; start support for variadic packets
2023-03-10 23:59:13 -06:00
CPunch
d60638d555
loginServer/peer: peer no longer uses panic/recover for error recovery
2023-03-10 20:30:16 -06:00
CPunch
857250bf33
protocol/packet: don't panic, return errors
2023-03-10 20:07:48 -06:00
CPunch
f1552830a0
protocol/packet: switch away from allocation
...
- Packet struct is small enough that allocation for it is really unnecessary, and can be passed around by value fairly easily
2023-03-10 20:00:06 -06:00
CPunch
985890d351
protocol: packets operate on io.ReadWritter; now use a buffer pool to encode/decode packets
2023-03-10 19:56:05 -06:00
CPunch
5cc3f275c1
packet: refactoring; use go's binary package for encoding *most* things
2023-03-10 17:10:57 -06:00
CPunch
52f0c4b1c7
update module name to reflect repo
2023-03-10 01:02:28 -06:00
CPunch
bf1e9d1350
updated README
2023-03-10 00:58:29 -06:00
CPunch
5c7b9bf9fb
login: implement CHAR_DELETE && SAVE_CHAR_TUTOR
...
- inventory is now properly grabbed from db
2023-03-10 00:41:21 -06:00
CPunch
8c52df6554
server: Client -> Peer
2023-03-09 16:42:13 -06:00
CPunch
294e83d533
db/account: match the DB usage of others
2023-03-09 15:37:41 -06:00
CPunch
c4ce7ae6c2
removed test.db
...
honestly forgot it got added to the commit history. there's nothing worth protecting in this db. i'll save you some time, the password for the 'hello' account is 'world'.
2023-03-09 15:33:39 -06:00
CPunch
6df016b421
login: validate characters
2023-03-09 14:41:38 -06:00
CPunch
8569225ec7
major refactoring; started DB
...
- DB work has started in db. this will be a direct port of the OpenFusion DB format.
- LoginServer is now less of a dummy. You can create and login to accounts, and create a character to go through the tutorial with.
- config.go will host some commonly changed variables.
- protocol: fixed a bug relating to arrays being ignored while encoding packets
2023-03-09 01:48:13 -06:00
CPunch
1fff485f93
refactoring; moved client to protocol package
2023-03-07 17:04:57 -06:00
CPunch
4c7696dc92
genstructs.py now also scrapes constant definitions
2023-03-07 16:28:34 -06:00
CPunch
07dae43072
no more manual shuffling of structs!! script works off of raw ilspycmd output
2023-03-07 15:53:12 -06:00
CPunch
20af006566
misc. refactoring
2023-03-07 15:31:34 -06:00
CPunch
3f4ce93f9f
genstructs.py: include go source header
2023-03-07 15:08:48 -06:00
CPunch
b639346605
server: split LoginServer, new Server interface
2023-03-07 14:47:49 -06:00
CPunch
468e426a82
structs: make sure *all* fields are exported
2023-03-07 14:23:53 -06:00
CPunch
bdd7b5ba86
genstructs.py: minor refactoring, clean up emitted tags
2023-03-07 13:30:43 -06:00
CPunch
6d42933189
updated README.md
2023-03-07 12:39:12 -06:00
CPunch
4d0bd4b1c1
absolute minimal login server
2023-03-07 02:06:40 -06:00
CPunch
8f3f31d354
server: implement REP_LOGIN key exchange
2023-03-07 01:20:36 -06:00
CPunch
57e681742e
protocol: add structures dumped from beta-20100104
2023-03-06 23:37:01 -06:00
CPunch
97a04c8ea8
tools: made a script to transpile the c# decompiled structs
2023-03-06 23:31:05 -06:00
CPunch
93208bc292
added simple build script
2023-03-06 18:41:26 -06:00
CPunch
d3d92c404b
misc. refactoring
2023-03-06 18:39:41 -06:00
CPunch
7b60d679e4
recover client panic
2023-03-05 02:32:11 -06:00
CPunch
115005b6a3
can now respond to packets
2023-03-05 02:14:36 -06:00
CPunch
34ce9a7420
misc. cleanup
2023-03-04 22:08:09 -06:00
CPunch
24359e9398
inital commit: we can read login packets!
2023-03-04 21:57:27 -06:00