Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sanjosolutions/sims4-modding-guide
Sims 4 modding guide
https://github.com/sanjosolutions/sims4-modding-guide
sims4 sims4-mod
Last synced: 4 days ago
JSON representation
Sims 4 modding guide
- Host: GitHub
- URL: https://github.com/sanjosolutions/sims4-modding-guide
- Owner: SanjoSolutions
- Created: 2024-06-12T17:11:20.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-06-13T19:09:11.000Z (6 months ago)
- Last Synced: 2024-12-15T08:42:21.839Z (7 days ago)
- Topics: sims4, sims4-mod
- Homepage: https://www.patreon.com/SanjoSolutions
- Size: 4.88 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Recommended Tools
### Python
Python is required to compile the Python scripts, in case your mod includes any.
It's recommended to install the same Python version as is used by Sims 4. At the time of writing this seems to be 3.7. This can be found out by checking the info on the file `/Game/Bin/python*_x64.dll`.
This can be done with [Anaconda](https://www.anaconda.com/download/success). After having installed Anaconda, create a new environment for Sims 4 by opening the `Anaconda Prompt` (you can find that under programs in Windows), and running the command `conda create --name Sims4 python=3.7`. To run Python scripts in this environment, open the `Anaconda Prompt` and switch to the environment with `conda activate Sims4`.
### Other
- [Git](https://www.git-scm.com/): For downloading code repository, versioning code and the Git Bash shell.
- [Visual Studio Code](https://code.visualstudio.com/): Free IDE that supports Python. The following extensions are recommended to be installed in Visual Studio Code:
- [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python) for Python support.
- [XML](https://marketplace.visualstudio.com/items?itemName=redhat.vscode-xml) for increased XML support, including formatting.
- [Sims 4 Toolkit in VS Code](https://vscode.sims4toolkit.com/): Can create the `.package` file for your mod.
- [Clipboard History](https://marketplace.visualstudio.com/items?itemName=Anjali.clipboard-history) for a clipboard history in Visual Studio Code.
- [Sims 4 Mod Development Tools](https://github.com/SanjoSolutions/sims4-mod-development-tools): Can create the `.ts4scripts` file for your mod.
- [Sims 4 Tuning Builder](https://tdesc.lot51.cc/): This tool works well for creating and modifying tunings. The graphical user interface provides a nice way to see what options are available, including documentation for them (in many cases).
- [Sims 4 Studio](https://sims4studio.com/board/6/download-sims-studio-open-version): Good tool for opening `.package` files and extracting all files from a `.package` file via `Batch export`.## Project template
[Project template](https://github.com/SanjoSolutions/sims4-mod-project-template)
## Other resources
- [Lot 51 - Learn to mod](https://lot51.cc/resources)
- [Python 3.7 documentation](https://docs.python.org/3.7/)## How modding works for Sims 4
Many things can be done with XML configuration files. With those you can declare different types of objects that are added to the game system.
Some more advanced things require writing Python scripts.
## How to do things
### Adding an interaction to an object
- Add an interaction tuning to your package. Usually a [SuperInteraction](https://tdesc.lot51.cc/Interactions/Descriptions/SuperInteraction.tdesc)
- In case you'd like to put the interaction in a new category: Add a [PieMenuCategory](https://tdesc.lot51.cc/PieMenuCategories/Descriptions/PieMenuCategory.tdesc) for the category. This type comes also additionally with a SimData file.It's also required to add the interaction to the object. A practical way to do this is to use the [Lot 51 Core Library](https://lot51.cc/core).
Here's an example for how to add an interaction to computers with it:```xml
Mod Name
Name
Interaction_Computer
Func_Computer
BuyCatEE_Computer
123456789<-- The ID of the interaction -->
```Just add such tuning to your package. The [Sims 4 Tuning Builder](https://tdesc.lot51.cc/) also supports the tuning types of the Lot 51 Core Library.