Skip to content

D1GQ/ReplantedOnline

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

845 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Replanted Online

A P2P multiplayer mod for Plants vs. Zombies: Replanted on Steam.


PVZR-Online-Promo

About

Replanted Online adds balance changes and lets you play Versus Mode using direct peer-to-peer connections, so you don't need to use Parsec or Steam Remote Play!

You must own a legitimate Steam copy of Plants vs. Zombies: Replanted to use this mod.


Installation Requirements

Launch the game once after installing MelonLoader so required assemblies are generated.


Compiling

Development Requirements

Clone the Repository

git clone https://github.com/D1GQ/ReplantedOnline.git
cd ReplantedOnline

Setup

Run the setup script to automatically configure all required dependencies:

setup.bat

When prompted, enter your game's MelonLoader directory.

Example:

C:\Program Files (x86)\Steam\steamapps\common\PVZ Replanted\MelonLoader

Build

Open:

ReplantedOnline.sln

in Visual Studio and build the solution in Release configuration.


Project Structure

Gameplay

  • src/Modules/Reloaded/Versus/Configs — contains configurations for plants/zombies
  • src/Modules/Reloaded/Versus/Gamemodes — contains gamemode setup and logic
  • src/Modules/Reloaded/Versus/Arenas — contains arena setup and logic
  • src/Managers/Reloaded/VersusLobbyManager.cs — handles lobby logic and states
  • src/Managers/Reloaded/VersusGameplayManager.cs — handles gameplay logic and states
  • src/Managers/Reloaded/VersusEndGameManager.cs — handles endgame logic and states

Networking

Client

  • src/Network/Client/ReplantedLobby.cs — handles Steamworks/LAN lobbies
  • src/Network/Client/ReplantedLobbyData.cs — handles lobby data
  • src/Network/Client/PacketHandler — contains packet handlers for routed packets
  • src/Network/Client/RPC — contains remote procedure call handlers for static RPCs
  • src/Network/Client/Object/Reloaded — contains synced network objects

Server / Transport

  • src/Network/Routing/Transport — contains networking transports
  • src/Network/Routing/NetworkDispatcher.cs — handles packet routing and dispatching
  • src/Network/Server/LAN — contains LAN testing server logic

Serialization

  • src/Network/Routing/Packet/PacketWriter.cs — handles binary serialization
  • src/Network/Routing/Packet/PacketReader.cs — handles binary deserialization
  • src/Network/Routing/Packet/Messages — contains serialized packet message types
  • src/Network/Routing/Packet/FastResolvers — contains fast serialization resolvers

Harmony Patches

Other

  • src/Patches/Reloaded/Client - contains patches for local client code for replanted
  • src/Patches/Steam - contains patches for steam client
  • src/Patches/Misc - contains miscellaneous patches

Versus

  • src/Patches/Reloaded/Gameplay - contains patches for versus gameplay related code
  • src/Patches/Reloaded/Gameplay/UI - contains patches for versus ui related code
  • src/Patches/Reloaded/Gameplay/Versus - contains patches for versus logic related code
  • src/Patches/Reloaded/Gameplay/Networked - contains patches for syncing versus logic across the network
  • src/Patches/Reloaded/Gameplay/Plants - contains patches for syncing specific plant logic across the network
  • src/Patches/Reloaded/Gameplay/Zombies - contains patches for syncing specific zombie logic across the network
  • src/Patches/Reloaded/Gameplay/Arenas - contains patches for arena specific logic

Hooks

  • src/Patches/Hooks - contains hooks for code harmony has trouble patching

Reporting Issues

Please report bugs or issues here:

https://github.com/D1GQ/ReplantedOnline/issues


Contact

replantedonlineofficial@gmail.com


Disclaimer

ReplantedOnline is an unofficial modification of Plants vs. Zombies: Replanted and is not affiliated with PopCap Games or Electronic Arts.

About

A P2P online multiplayer mod for Plants vs. Zombies: Replanted on Steam.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors