The Wayback Machine - https://web.archive.org/web/20221004172717/https://github.com/WolfireGames/overgrowth/commit/82137f4e41a240ccaf2312af250a441a0c0ebef7
Skip to content
Permalink
Browse files
Add Compiling, Contribution and Readme files
  • Loading branch information
lukors authored and autious committed Apr 12, 2022
1 parent 526bbff commit 82137f4e41a240ccaf2312af250a441a0c0ebef7
Show file tree
Hide file tree
Showing 3 changed files with 182 additions and 2 deletions.
@@ -0,0 +1,69 @@
# How To Compile Overgrowth

To compile and run Overgrowth, you first need to have installed a commercial version of the game.
If you're on steam, you'll also want to make sure you're using the internal_testing branch to have the latest set of data-files for the game.
The reason for this is that you want the Data/ folder from the game.

These instructions assume you've already managed to download the project and have it in a local folder. There's no need to try and initialize the submodules unless you are an official developer of Wolfire, as those repos are private and primarily used by the build system for deployment. Make sure that the folder depth isn't too great, as this can cause some issues. From now we'll assume you've downloaded the repo into the following folder on windows ```C:\overgrowth``` and ```~/overgrowth``` on unix-like systems.

# Dependencies

## Windows

To compile Overgrowth on windows you'll need the following to be installed before you start:
* CMake https://github.com/Kitware/CMake/releases/download/v3.23.0/cmake-3.23.0-windows-x86_64.msi
* Visual Studio 2022 Community Edition https://visualstudio.microsoft.com/downloads/

## MacOSX

Overgrowth uses the MacOS 10.9 sdk, this is pretty old and isn't included in XCode anymore, so you'll have to find it somewhere else. One alternative is ```https://github.com/phracker/MacOSX-SDKs```
After that you'll need to install Xcode from the apple store.

To install the SDK into Xcode, you'll need to copy the folder ```MacOSX10.9.sdk``` into ```~/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs```

After that you may need to start xcode once before building the project, to ensure that everything is configured.

## Generic Linux

Todo

## Ubuntu

The following command should install all necessary dependencies to build Overgrowth.
```sudo apt install build-essential cmake mesa-common-dev libsdl2-dev libsdl2-net-dev libgtk2.0-dev libogg-dev libvorbis-dev libfreeimage-dev libopenal-dev libjpeg-dev libtheora-dev libbz2-dev libfreetype-dev```
# How To Compile
## Windows
1. Make sure you have an installed copy of Overgrowth and find the path to the install. If you've installed the game via Steam you can get the path by right clicking the game in the Steam games list, press Properties, go to Local Files and press Browse. This will open explorer window with the game path, copy that path into your clipboard. example: ```E:\SteamLibrary\steamapps\common\Overgrowth```
2. Go to the Overgrowth git repo folder and create a new subfolder named "Build" example ```C:\overgrowth\Build```
3. Open a windows cmd (alternatively a git bash console) in the build folder you just created.
4. Run the following command ```cmake ../Projects -DAUX_DATA="E:/SteamLibrary/steamapps/common/Overgrowth"```. Replace the path with your own Overgrowth install, and remember to switch the path separators from ```\``` to ```/```
5. Open the generated ```Overgrowth.sln``` file using Visual Studio 2022
6. Press the "Local Windows Debugger" button to compile and start the game.
## MacOSX
1. Go to the folder of the project
2. Create a build directory ```mkdir Build```
3. Run cmake to generate Makefiles, include the path to an already installed instance of Overgrowth ```cmake ../Projects -DAUX_DATA="/path/to/installed/Overgrowth"```
4. Run make to build the game ```make```
5. Run the game by first moving to the project directory ```cd ..```
6. Then start the game ```Build/Release/Overgrowth.x86_64```
## Linux
1. Go to the folder of the project
2. Create a build directory ```mkdir Build```
3. Run cmake to generate Makefiles, include the path to an already installed instance of Overgrowth ```cmake ../Projects -DAUX_DATA="/path/to/installed/Overgrowth"```
4. Run make to build the game ```make```
5. Run the game by first moving to the project directory ```cd ..```
6. Then start the game ```Build/Release/Overgrowth.x86_64```
1.Clone the repository to a local folder
@@ -0,0 +1,60 @@
# Contributing to Overgrowth

Here you can read about how you can help the project and how it's structured.

## How We're Organized

The project has a group of trusted maintainers who run the project, and together they have the final say in decisions. They are‥

- [@akien-mga]
- [@Conan-Kudo]
- [@kavika13]
- [@autious]

## Code of Conduct

The Overgrowth GitHub is for on-topic discussions and development. It's everyone's responsibility to maintain a positive environment, especially during disagreements.

Anything not about Overgrowth is off-topic, and such discussions are removed. People who do not follow the Code of Conduct are warned or removed.

## How You Can Help

Here are some ways you can contribute. If you can add value in another way, you are more than welcome to do so!

### Reporting Issues

An issue can be either a bug or an idea for improvement, and it is the first step towards change.

To report an issue, first search among the [issues] to see if someone already reported it. If someone did, give the issue a 👍 reaction to show that you want it solved too, and write a comment if you have something to add. If the issue does not exist, create it.

### Educating and Documenting

This game engine is big, and as with any software project, some parts can be hard to understand. Documenting the code and how everything works together helps new people get started contributing.

Here are some common ways of documenting:

- Write comments in the code itself and create a pull request. This is useful when documenting specific parts.
- Write external documentation that we can link to or include in the repository. This is useful when documenting the bigger picture.

Learning materials such as tutorials and articles make it easy for people to get started with the engine. For example, how do you add a new character? How do you create a custom campaign? How do you package your work for others?

### Reviewing Code

Even if you aren't a maintainer, you are encouraged to review pull requests. More eyes on code contributions improve the quality of the code.

Go to the [pull requests] and read an existing pull request to start reviewing. With GitHub, you can comment on specific lines in the code to discuss issues or potential improvements.

### Contributing Code

To submit your code for inclusion, create a [pull request][pull requests] on GitHub so people can review your code and give feedback. If your changes align with the goals of the project and the quality is good, we will probably merge it!

You don't need to be a master programmer to submit code. This repository is a place for learning and collaboration, so if your submission isn't ready for merging, maintainers will be happy to give helpful feedback to get it merged eventually.

When one maintainer has reviewed and accepted a contribution, it gets merged into the codebase. Maintainers can accept their own contributions.

[@akien-mga]: https://github.com/akien-mga
[@Conan-Kudo]: https://github.com/Conan-Kudo
[@kavika13]: https://github.com/kavika13
[@autious]: https://github.com/autious
[issues]: https://github.com/WolfireGames/overgrowth/issues
[pull requests]: https://github.com/WolfireGames/overgrowth/pulls
@@ -1,2 +1,53 @@
# overgrowth
Open Source codebase of the game Overgrowth by Wolfire Games LLC
# Overgrowth
This is the official repository for [Overgrowth]'s source code. Only the code is available here; the game data (such as art assets and levels) can only be legally obtained by purchasing Overgrowth from [Wolfire Games].

This repository lets you‥

- Run the open source code with the commercial data to perform experiments for educational purposes.
- Propose changes to be merged back into the commercial game.
- Create modifications for Overgrowth that would otherwise be impossible.
- Use helpful code snippets in your projects.
- Create your own commercial "total conversions" that use an entirely new set of assets.

If you would like to distribute any of the original Overgrowth assets, you must obtain explicit written permission from Wolfire Games.

## Compiling
[COMPILING.md] contains instructions on compiling and running the commercial Overgrowth game using the open source code.

## Contributing
This repository is entirely community-operated. This means you can help by submitting bug reports, reviewing other people's code, contributing your own code, and so on.

Read [CONTRIBUTING.md] for more information.

## License
Unless otherwise noted, the code in this repository is licensed under `Apache-2.0`. Read [LICENSE] for the full license.

`Apache-2.0` is a "permissive" open source license, meaning you can use it for more or less whatever you want, including in closed source projects. Licenses are hard to understand, `Apache-2.0` is no exception. Here is a summary of what the license means in practice in most cases. This is not legal advice:

If you distribute a compiled program using the code, or you distribute the code itself, modified or not, you must do the following:

### Include the entire contents of the `LICENSE` file

The license can be somewhere in the program itself or in a separate file. The purpose is to clarify under what license you're using the code. For example, you can have a file called `LICENSES`, and there you can have a line saying `This software uses code from Overgrowth under the Apache-2.0 license, read the full license in the file named LICENSE_APACHE.`.

### Mark files you've changed with a notice

If you distribute the code itself, in each file you modify, write that you have modified it. For instance, the files have a "boilerplate notice" at the top, you can write that you have changed it there, so it looks something like this:

```
// Name: filename.h
// Developer: Wolfire Games LLC
// Modified By: Firstname Lastname
// Description:
// License: Read below
```

### Do not remove any copyright notices or similar

You're not allowed to remove things like `Copyright 2022 Company Name` or similar.

[Overgrowth]: https://overgrowth.wolfire.com
[Wolfire Games]: https://wolfire.com
[COMPILING.md]: COMPILING.md
[CONTRIBUTING.md]: CONTRIBUTING.md
[LICENSE]: LICENSE

0 comments on commit 82137f4

Please sign in to comment.