portal64-still-alive/README.md

87 lines
3.5 KiB
Markdown
Raw Normal View History

2024-01-11 22:03:30 -05:00
# Portal64: Still Alive
2022-02-27 18:41:51 -05:00
2023-10-18 12:50:12 -04:00
A demake *(remake for an older platform)* of Portal for the Nintendo 64.
2024-01-11 22:03:30 -05:00
Originally created by [James Lambert](https://github.com/lambertjamesd).
2023-10-18 12:50:12 -04:00
2024-01-11 22:03:30 -05:00
The original repository was taken down by James at Valve's request, due to the build requirement on Nintendo's proprietary libultra and its consequent inclusion in ROM files.
The [original](https://github.com/mwpenny/portal64/tree/original) branch contains the version history of the original repository. Active development occurs in the [master](https://github.com/mwpenny/portal64/tree/master) branch.
2023-10-18 12:50:12 -04:00
2024-01-11 22:03:30 -05:00
The main goals of this fork are:
1. Remove proprietary code requirement (see [N64 Libraries](./documentation/n64_library_usage.md))
2024-01-13 14:29:55 -05:00
2. Finish development of the game (see [Development Progress](./documentation/development_progress.md))
2023-10-18 12:50:12 -04:00
2024-01-11 22:03:30 -05:00
We do what we must because we can.
2023-12-29 15:54:24 -05:00
2024-01-11 22:03:30 -05:00
![](./assets/images/readme_slideshow.gif)
2023-12-29 15:54:24 -05:00
2024-01-11 22:03:30 -05:00
## Disclaimer
2023-12-29 15:54:24 -05:00
2024-01-11 22:03:30 -05:00
This project is not affiliated with Nintendo or Valve.
2022-04-07 23:41:58 -04:00
2024-01-11 22:03:30 -05:00
This repository contains no material owned by Nintendo. However, Nintendo's tools are currently required to build the game. **No form of compiled ROM will be distributed while this dependency is required** since the built game would contain Nintendo's intellectual property. One goal of this project is to remove the requirement on proprietary code.
2024-01-11 22:03:30 -05:00
Game assets from Portal are sourced from the original game's files, which must be supplied separately at build time. In other words, **this repository cannot be used to compile the game without legally owning Portal and providing its files**. Legal ownership of Portal will be required regardless of tool or library changes.
2023-11-16 17:36:04 -05:00
2024-01-11 22:03:30 -05:00
## Overview
2023-11-16 17:36:04 -05:00
2024-01-11 22:03:30 -05:00
This project aims to reproduce Valve's original Portal, playable on the N64.
2023-11-16 17:36:04 -05:00
2024-01-11 22:03:30 -05:00
Because this demake has been in development for some time, it has made significant progress in both gameplay systems and fidelity including:
2023-11-16 17:36:04 -05:00
- Twelve+ test chambers completed
- Fully functioning portals, and gun
- Fully functioning physics engine
- Lighting system
- Main/pause menus
- Sound effects/dialogue
- Cutscenes
2023-10-18 12:57:19 -04:00
- Multi-language subtitles and audio dialogue
- Eye-Candy (Reflections, ...)
- Much more!
This is a community driven project that welcomes any and all game testers and or [Contributors](./documentation/contributing.md).
2022-04-07 23:41:58 -04:00
## How to build
Clone the Portal64 repo or download the zip.
```sh
sudo apt install git -y
2024-01-11 22:03:30 -05:00
git clone https://github.com/mwpenny/portal64-still-alive.git portal64
cd portal64
```
2024-01-11 22:03:30 -05:00
### Setup and install dependencies
The following commands allow the scripts to run on the system, then it runs the setup.
As always it is good practice look over scripts from the internet before running them on your system.
2022-04-30 23:51:08 -04:00
```sh
sudo chmod +x skelatool64/setup_dependencies.sh
sudo chmod +x tools/romfix64.sh
sudo chmod +x tools/setup.sh
./tools/setup.sh
```
Alternative setup methods include [Docker setup](./documentation/docker_setup.md) and [Manual setup](./documentation/manual_setup.md).
2024-01-11 22:03:30 -05:00
Whatever setup you choose, you will still need to add the Portal folder to `portal64/vpk/` OR create a symbolic link to the Portal folder. See [vpk/add_vpk_here.md](./vpk/add_vpk_here.md) for more details! Symlinks do not work for Docker builds.
2023-10-20 05:56:31 -04:00
2024-01-11 22:03:30 -05:00
### Build ROM
2022-04-30 23:51:08 -04:00
Finally, run (as non-root) `make` to build the project.
2023-10-20 05:56:31 -04:00
```sh
2023-10-15 08:16:40 -04:00
# Build (default build with english audio)
make
```
If you have issues use `make clean` to clean out any previous build files, remember it also removes any languages you set up so you will need to run those commands again.
2023-10-20 05:56:31 -04:00
```sh
# Clean out any previous build files
make clean
```