aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* (inefficiently) send bullets state and paint them.rodri2023-02-233-12/+79
|
* take player input into account when stepping the simulations.rodri2023-02-224-14/+112
|
* take the packet seq and ack into account during connection setup. added a ↵rodri2023-02-216-43/+214
| | | | player queue to keep clients around waiting for a party.
* implemented a keep alive mechanism.rodri2023-02-165-21/+47
| | | | | also changed the newframe fn to take a Udphdr* instead of a Frame*. the verifyframe fn now returns 1 if correct 0 otherwise.
* implemented per-packet HMAC to avoid MITM tampering.rodri2023-02-1112-25/+126
|
* implemented connection establishment with per client DHX.rodri2023-02-117-60/+360
|
* implemented a packet processing pipeline. got rid of Lobby. began ↵rodri2023-02-097-227/+195
| | | | development of a network protocol.
* vmodeled: draw the points of every stroke. implement undo() functionality.rodri2023-02-051-23/+96
|
* vmodeled: plot lines and curves and save them to a file on exit.rodri2023-02-033-29/+85
|
* vmodeled: made scale and rotation xforms methods of an Object. began work on ↵rodri2023-02-021-29/+62
| | | | the plot/drawing function. writevmodel writes to stdout upon exit.
* vmodeled: got rid of unnecessary variables and xforms.rodri2023-02-021-44/+16
|
* vmodeled: fixed object scaling and rotation without affecting coords. ↵rodri2023-02-022-42/+119
| | | | created initial object structure.
* vmodeled: added the ability to rotate a model.rodri2023-02-011-2/+24
|
* use libgeometry from the system. got rid of global `theparty`. wrote a ↵rodri2023-01-3114-67/+64
| | | | little man page draft.
* implemented new zooming functionality (adapted from games/galaxy.)rodri2022-06-211-14/+18
|
* added zoom.rodri2022-06-201-2/+26
|
* brought the VModel struct and its routines to loading from a file and drawing.rodri2022-06-161-2/+133
|
* began work on a VModel editor.rodri2022-06-152-0/+166
|
* some corrections to frame processing and nomenclatures.rodri2022-06-154-23/+21
|
* implemented a custom PDU/frame structure on top of UDP for game networking.rodri2022-06-119-13/+102
|
* show the ports on the debugging output when receiving.rodri2022-06-081-2/+8
|
* changed the transport from tcp to udp. got rid of some unnecessary ↵rodri2022-06-083-62/+30
| | | | connection management and party setup code—needs further refactoring. fixed some nomenclatures.
* got rid of GameState.rodri2022-06-036-149/+29
|
* added the skymap background image fetch script.rodri2022-06-021-0/+3
|
* use semi-implicit euler for bullet dynamics.rodri2021-09-251-1/+13
|
* forgot to add the actual sky map.rodri2021-08-041-0/+0
|
* add a default sky map from fourmilab.ch.rodri2021-08-041-1/+22
|
* implemented keyboard key send/recv procedures.rodri2021-08-043-4/+68
|
* implemented complete universe particles integration.rodri2021-08-023-20/+74
|
* added an sprite for the Earth.rodri2021-08-015-3/+21
|
* randomly position the ships, facing each other.rodri2021-08-012-8/+22
|
* began building a universe for every party.rodri2021-08-0110-49/+275
| | | | | | | get rid of the notes file. i already keep them on paper. adapted the client to use an rframe for drawing. implemented some VModel methods for testing. FPS2MS → HZ2MS. it makes more sense and is shorter.
* incorporated libgeometry into the project.rodri2021-07-299-42/+72
| | | | | | transitioned the integrator from scalar to vector-based. added a packing procedure for Point2. created the structure to model bullets.
* made the client window size immutable.rodri2021-07-296-5/+44
| | | | | added some dev notes to a file. renamed Lobby.healthcheck to Lobby.purge, which makes more sense.
* brought the Sprite struct for future animations.rodri2021-07-2812-77/+269
| | | | | | | | | | | implemented per-party game state and dynamics. now the state is broadcast after integration, not before. fixed a bug in the broadcast procedure where it would keep referencing an already freed Party and its players. implemented a proper Keymap the user will be able to configure. added mkfile rules to manage installation and dependencies. defined a ton of structs in dat.h for new game objects. started work on a general vector model abstraction to define ship `skins'. removed some debug clauses we no longer need. fixed some other ones.
* first stages of a full-featured client.rodri2021-07-274-23/+149
|
* added a #s command interface for monitoring and control.rodri2021-07-251-0/+64
|
* implemented parties to hold PvP match info.rodri2021-07-258-135/+237
| | | | | | started serializing game state through the wire. made some major changes to the Lobby struct, plus the ability to check the health of every connection. added some more debug statements, did some cleanup and put more checks.
* some corrections.rodri2021-07-232-3/+3
|
* implemented a lobby for users waiting to join a party.rodri2021-07-236-23/+248
| | | | brought the pack/unpack procedures from ssh(1).
* implement a primitive VLA to keep connection state.rodri2021-07-212-6/+34
|
* implemented very basic server broadcasting.rodri2021-07-218-39/+159
| | | | | got rid of unnecessary (at least for now) code. brought some e-funcs.
* initial commit.rodri2021-07-219-0/+385
implemented basic server loop, with separate threads to handle connections and run the simulations.