Skip to content

MyEcoria/palwish

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

225 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Palwish - 3D Raycasting Game Engine

A multiplayer first-person shooter game engine written in C using CSFML, featuring raycasting technology similar to classic games like Wolfenstein 3D.

Key Features

  • First-person 3D perspective with raycasting technology
  • Multiplayer functionality with client-server architecture
  • Real-time network synchronization
  • Weapon system (AK47, Minigun)
  • Dynamic player movement and rotation
  • Real-time minimap with player tracking
  • Automatic map generation
  • Collision detection system
  • Rich texture mapping
  • Mouse/gamepad compatibility
  • Health and stamina mechanics
  • Weapon management system
  • Performance monitoring

Setup

Requirements

  • GCC
  • CSFML
  • Make
  • Network connection (multiplayer mode)

Build

# Offline mode
make

# Online mode
make bonus

# Run
./wolf3d

Controls

  • Movement: W/Z, S, A/Q, D or Arrow keys
  • Look: Mouse
  • Shoot: Left Click
  • Reload: R
  • Weapon Switch: 1-2
  • Sprint: Left Shift
  • Exit: ESC
  • Pause: P

Technical Features

Networking

  • Position/Health synchronization
  • Damage system
  • Server-side management
  • Low-latency protocol
  • Auto-reconnect

Architecture

  • src/: Source files
    • main.c: Main game loop and initialization
    • network/: Networking components
    • events/: Input handling and game events
    • draw/: Rendering systems
    • maps/: Procedural map generation
    • menu/: Menu and UI systems
  • bonus/server/: Dedicated server implementation
    👉 See the server protocol documentation here
  • include/: Header files
  • garbage_collector/: Memory management system
  • assets/: Game assets and textures

Performance

The game includes:

  • Network latency display
  • Object synchronization statistics
  • FPS optimization
  • Memory tracking
  • Profiling (make analyse)

License

EPITECH Project - All rights reserved

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •