This is a cross-platform tool to historicize different branches/depots/manifests and generating pseudocode for it to compare different game updates

Overview

CSHP

Logo

This is a cross-platform tool to historicize different branches/depots/manifests and generating pseudocode for it to compare different game updates.

Roadmap

This project is WIP but will get updates frequently
listing the features below.

  • Fetching depots from a steamDB API.
  • Download all the manifests of the depo.
  • Only download certain assemblies based on user configuration.
  • Dissasemble assemblies
    • Dissasemble assemblies without hardcoding the names.
  • Safety of the code (anything that panics isn't a recoverable error).
  • Support for multiple branches.
  • Support for uploading pseudo using git.
    • Create different branches for different manifests.
    • Multithreaded downloading/dissasembly.
  • Remove hardcoded values.

Support

This project supports x86_64/arm64 CPU's.
The Operation systems/Kernels supported are: Linux, Windows,macOS.

If you need any manual help/issues please create an GitHub issue or contact me on matrix under @raizo:matrix.org.

Requirements

  • DepotDownloader in a downloader directory.
  • ILspycmd set the path in main.rs (hardcoding will be removed later)
  • .NET 6.0 SDK/Runtime

Usage

  • Move DepotDownloader into the downloader folder.

Setting up the folders

  • Create a download directory (Where the manifests are getting downloaded in).
  • Create a pseudo directory (Where the psuedo files are getting dissasembled into).
  • Create a repo directory (Where the git repository resides in).

Setting up the repository

  • Run these commands in your favorite shell
cd repo_direcotry_name
git init
git remote add origin remote_url_here
  • Create branches for all the manifests using either GitHub git checkout -b branch_name_here main_manifest_branch. main_manifest_branch would be the latest game version/manifest.

Setting up the config

  • Rename example_config.json to config.json.
  • Change the information in config.json.

Setting up the filter

  • Change what assembly paths you want dissasembled in the filter.
  • Change the name/path of your filter in config.json.

Running

  • Run cargo run in the root directory of this project.
You might also like...
A lightweight, cross-platform epub reader.
A lightweight, cross-platform epub reader.

Pend Pend is a program for reading EPUB files. Check out the web demo! Preview Image(s) Installation Building Pend is simple & easy. You should be abl

Cross-platform (including wasm) persistent key value store plugin for rust games/apps

bevy_pkv bevy_pkv is a cross-platform persistent key value store for rust apps. Use it for storing things like settings, save games etc. Currently, it

Cross platform rendering in Rust
Cross platform rendering in Rust

Miniquad Miniquad is a manifestation of a dream in a world where we do not need a deep dependencies tree and thousands lines of code to draw things wi

Cross-platform compute shader engine
Cross-platform compute shader engine

wgpu-compute-toy This is the compute shader engine for https://compute.toys As well as running on the web via WebAssembly and WebGPU, it can run nativ

A cross-platform image (texture) viewer
A cross-platform image (texture) viewer

img_maniac A cross-platform image (texture) viewer Features Drag and drop images: Users can easily add as many images as they want to the main window

A networked (p2p), cross-platform physics simulation example using rollback netcode

bevy_gaff (work in progress) bevy_gaff is an attempt at making a networked (p2p), cross-platform physics simulation using rollback netcode. It synchro

Victorem - easy UDP game server and client framework for creating simple 2D and 3D online game prototype in Rust.

Victorem Easy UDP game server and client framework for creating simple 2D and 3D online game prototype in Rust. Example Cargo.toml [dependencies] vict

a library for generating bevy_rapier2d colliders, for bevy apps, from images with transparency
a library for generating bevy_rapier2d colliders, for bevy apps, from images with transparency

bevy_rapier_collider_gen a library for generating bevy_rapier2d colliders, for bevy apps, from images with transparency example to see this in action

2-player game made with Rust and
2-player game made with Rust and "ggez" engine, based on "Conway's Game of Life"

fight-for-your-life A 2-player game based on the "Conway's Game of Life", made with Rust and the game engine "ggez". Create shapes on the grid that wi

Owner
raizo
Random person on the internet coding software. https://keybase.io/raizo
raizo
compare gdnative rust based physics against Godot built-in physics

Godot vs. Rapier Rapier is an open source physics framework written in Rust. This project pits godots built-in physics against Rapier. It uses godot-r

Stephan Dilly 75 Nov 17, 2022
A safe, fast and cross-platform 2D component-based game framework written in rust

shura shura is a safe, fast and cross-platform 2D component-based game framework written in rust. shura helps you to manage big games with a component

Andri 28 Jan 17, 2023
Cross-platform game engine in Rust.

Cross-platform game engine in Rust.

Fedor Logachev 1.9k Jan 3, 2023
Neutral cross-platform Rust game template

Rust Game Template Neutral cross-platform Rust game template. Build tool This project uses cargo-make task runner. It's required to build the project.

null 0 Feb 5, 2022
A cross platform classic RPG game creator written in Rust.

Eldiron - Classic RPG Creation Create RPGs for every platform with Eldiron. Eldiron v1 will be able to create games similar to the classic Ultima seri

Markus Moenig 164 Jan 2, 2023
Solana Game Server is a decentralized game server running on Solana, designed for game developers

Solana Game Server* is the first decentralized Game Server (aka web3 game server) designed for game devs. (Think web3 SDK for game developers as a ser

Tardigrade Life Sciences, Inc 16 Dec 1, 2022
Tiny cross-platform webview library for C/C++/Golang. Uses WebKit (Gtk/Cocoa) and Edge (Windows)

webview A tiny cross-platform webview library for C/C++/Golang to build modern cross-platform GUIs. Also, there are Rust bindings, Python bindings, Ni

webview 10.8k Jan 9, 2023
Cross-platform GPU-accelerated viewer for the Mandelbrot set and similar (escape-time) fractals

fractal_viewer A cross-platform, GPU-accelerated viewer for the Mandelbrot Set and related fractals. Try it online! Usage Scroll wheel to zoom, click

null 5 Jan 8, 2023
IDE for cross-platform software development

Diversity Space IDE for cross-platform software development | 日本語 | English | Русский | READMEの英語版とロシア語版はDeepl翻訳を使用して翻訳されています Английская и русская вер

latteS 0 Feb 23, 2022
A cross platform (wasm included) networking library!

bootleg_networking A cross platform (wasm included) networking library! A networking plugin for the Bevy game engine that wraps around bevy_networking

William Batista 51 Jan 1, 2023