Skip to content
Final game for 15-466 Computer Game Programming
C C++ Python CMake Makefile Batchfile Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
dist
meshes
.gitignore
BoneAnimation.cpp
BoneAnimation.hpp
CMakeLists.txt
Connection.cpp
Connection.hpp
GL.hpp
GameMode.cpp
GameMode.hpp
GameState.cpp
GameState.hpp
Jamfile
Load.cpp
Load.hpp
LobbyMode.cpp
LobbyMode.hpp
MainMode.cpp
MainMode.hpp
MenuMode.cpp
MenuMode.hpp
MeshBuffer.cpp
MeshBuffer.hpp
Mode.cpp
Mode.hpp
README.md
Scene.cpp
Scene.hpp
Skybox.cpp
Skybox.hpp
Sound.cpp
Sound.hpp
WalkMesh.cpp
WalkMesh.hpp
bone_vertex_color_program.cpp
bone_vertex_color_program.hpp
check_fb.hpp
compile_program.cpp
compile_program.hpp
data_path.cpp
data_path.hpp
demo_feedback.pdf
depth_program.cpp
depth_program.hpp
draw_text.cpp
draw_text.hpp
export.bat
export_level.bash
gl_errors.hpp
gl_shims.cpp
gl_shims.hpp
glcorearb.h
load_save_png.cpp
load_save_png.hpp
main.cpp
make-gl-shims.py
networking WIP.txt
read_chunk.hpp
server.cpp
texture_program.cpp
texture_program.hpp
vertex_color_program.cpp
vertex_color_program.hpp

README.md

Poseidon's Plunder

Final game for 15-466 Computer Game Programming

Server movement validation:

  • Client sends unique ID (random int?), new position, shooting & other moves

  • Server validates new position against old position- if not too far away (some multiple of max speed), update player's position

  • Server sends players' positions to client- if self position is too far away, snap to that?

    • Could cause occasional jumping but will largely prevent teleporting with hacked clients
  • Build instructions (windows):

    • Needs kit-lib-win and bullet built in local directory
    • Run jam

Building bullet

  • Clone from https://github.com/bulletphysics/bullet3
  • Run build_visual_studio_without_pybullet_vr.bat (you can edit this to be a more current visual studio version, but it shouldn't matter)
  • Open the generated project in VS 2017
  • Open config manager
    • Create new solution platform x64
  • Build > Build Solutions (ctrl shift B)
    • you might have to repeat this a few times, since the dependencies are bad
    • I think you only really need to build: BulletCollision, BulletDynamics, LinearMath
      • Need to set /md flags on each project
  • Put the built files into PoseidonsPlunder/bullet/build, and the source (headers) into PoseidonsPlunder/bullet/src
  • Or just use Kai's prebuilt bullet: https://www.dropbox.com/s/9bh7d5jfm2hbtxq/bullet.zip?dl=0

Credits

You can’t perform that action at this time.