Giter Site home page Giter Site logo

jiyorude / vertice Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 23.88 MB

Quake III Map Boundary Analysis Tool

Home Page: https://pypi.org/project/vertice/

License: MIT License

Python 100.00%
analysis-tool python quake3 game-map boundary-analysis map-dimensions quake-3-arena

vertice's Introduction

Vertice

Quake III Map Boundary Analysis Tool

Created by Jordy Veenstra (A Pixelated Point of View)
Licensed under MIT


Table of Contents


Background

Vertice is a Python algorithm that outputs boundary data found inside Quake III map files. It outputs the size of each map as X, Y, Z coordinates, finds every spawn point, and calculates the movement space the player/or the camera has before it enters the void. Furthermore, it outputs the coordinates of each spawn point inside a 3D plot for visual reference.

Vertice is able to spot the difference between .bsp and .pk3 files and can work with both of them. Vertice can also recognize multiple .bsp files inside a .pk3 archive. Depending on the amount of maps and processing power of your computer, the time needed to generate the data may vary, but in most cases shouldn't take longer than a few seconds. Once completed, a pdf containing all of the data will be generated in the output folder for further use.

The algorithm was initially made as a helper tool to generate map and camera data for the avant algorithm, yet as a standalone application it might prove useful in certain situations as it can offer the following features:

  • Calculate the size/scope of a map;
  • Find out how many spawn points there are inside of a map;
  • Tell you how close/far a spawn point is from the void;
  • Present data as to how much the player (or in the case of Q3MME, the camera) can move before the void is entered;

Installation

Vertice can be installed in two different ways. The easiest way to run the algorithm is to install the PyPi package and run it from the commandline. The second way to use vertice is by cloning the repository and installing the dependencies.

You need to make sure that you have a recent version of Python installed (Preferably >= 3.8). You will need pip as well in order to download a number of required dependencies. If you download Python from the original Python Foundation Website, pip will automatically be installed.

If you are using the PyPi package, please follow this approach:

  • Verify your Python version and/or install/upgrade
  • Install the PyPi package with pip install vertice
  • Open a new terminal window, navigate to a directory of choice, for example your Desktop or Documents.
  • Create two folders: input and output in that same directory.
  • Place your Quake III maps inside the input folder. Vertice supports 7zip, rar, and zip archives or bsp and pk3 files/archives. It does not matter if they are placed in the root of the input folder or in seperate folders, as long as they are within the input folder.
  • Run the algorithm in your terminal by typing vertice_run.
  • The algorithm should start and updates should be visible inside the terminal window.
  • Once the message ...Done! is visible, you can navigate to the output folder in order to find your PDF file.

If you want to clone the repository, please follow this approach:

  • Verify your Python version and/or install/upgrade
  • Open a new terminal window, navigate to a folder of choice
  • Clone the repository with git clone https://github.com/jiyorude/vertice.git
  • (Optional) Switch to a virtual environment of choice with venv or other tool that has your personal preference
  • Install all dependencies with pip install -r requirements.txt.
  • Place your Quake III maps inside the input folder. Vertice supports 7zip, rar and zip archives, or .bsp and .pk3 files. It doesn't matter if they are placed in the root of the input folder or if the files are placed in seperate folders inside of the input folder.
  • Inside your terminal window, navigate to the folder where you cloned the repository and navigate to src/vertice.
  • Start the algorithm with python vertice.py.
  • The algorithm should start and updates should be visible inside the terminal window.
  • Once the message ...Done! is visible, you can navigate to the output folder in order to find your PDF file.

License

Vertice is licensed under MIT. Please refer to License.txt for more information regarding usage.

© Jordy Veenstra 2024
© A Pixelated Point of View 2024

vertice's People

Contributors

jiyorude avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.