Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/drincs-productions/nqtr-system

A complete system introducing the concepts of location, time and event, producing the framework of a not-quite-point-and-click adventure game.
https://github.com/drincs-productions/nqtr-system

f95 f95zone game game-development interface map navigation navigation-system not-quite-point-and-click-adventure-game point-and-click-adventure-game quest quest-system renpy routine routine-system time visual-novel

Last synced: 3 days ago
JSON representation

A complete system introducing the concepts of location, time and event, producing the framework of a not-quite-point-and-click adventure game.

Awesome Lists containing this project

README

        

# Navigation Quest Time Routine System for Ren'Py

![Last commit](https://img.shields.io/github/last-commit/DRincs-Productions/NQTR-System)
![License](https://img.shields.io/github/license/DRincs-Productions/NQTR-System)

Discord

A complete system introducing the concepts of location, time and event, producing the framework of a not-quite-point-and-click adventure game.

This repo is a complete set of tools to create a game where you can explore and relate to characters.

Feel free to contribute, fork this and send a pull request. 😄

Itch.io Page: https://drincs-productions.itch.io/nqtr-system

----

## TO DOWNLOAD THIS TEST PROJECT

```shell
# Basic command to download projects from git
git clone https://github.com/DRincs-Productions/NQTR-System
# IMPORTANT -> Will add the libraries needed to run the program
cd NQTR-System
git submodule update --init --recursive

```

----

## Documentation

**[Wiki](https://github.com/DRincs-Productions/NQTR-System/wiki)**

## Code snippets ([VSCode](https://code.visualstudio.com/))

(all begin with `DR_`)

Download the: [link](https://github.com/DRincs-Productions/NQTR-System/releases/tag/code-snippets%2Fv2.0.0)

![ezgif com-gif-maker (1)](https://user-images.githubusercontent.com/67595890/179365279-0d0b6d45-0048-4a0d-8c6d-9571b9c328f4.gif)

## Install LTS Version

To install a precise version install it manually: [Releases](https://github.com/DRincs-Productions/NQTR-System/releases).

But I recommend you to use git submodule:

```bash
# renpy-utility-lib
git submodule add -b python-lib -- https://github.com/DRincs-Productions/renpy-utility-lib 'pythonpackages/renpy_utility'
git submodule add -b renpy-lib -- https://github.com/DRincs-Productions/renpy-utility-lib 'game/renpy_utility_tool'
# renpy-utility-lib
git submodule add -b main -- https://github.com/DRincs-Productions/renpy-screens-style 'game/screens_style'
# NQTR-System
git submodule add -b python-lib -- https://github.com/DRincs-Productions/NQTR-System 'pythonpackages/nqtr'
git submodule add -b renpy-lib -- https://github.com/DRincs-Productions/NQTR-System 'game/nqtr_tool'
git submodule add -b screens -- https://github.com/DRincs-Productions/NQTR-System 'game/nqtr_screens'
git submodule add -b interface-images -- https://github.com/DRincs-Productions/NQTR-System 'game/nqtr_interface'

```

**AND** create a empty file `__init__.py` into `pythonpackages/` so `pythonpackages/__init__.py`.

add `after_load` into `core.rpy` for update values after game update:

```renpy
label after_load:
# ...

# renpy-utility-lib
call update_current_flags(update_dictionary = True)

# nqtr
python:
# timeHandler update: if you update TimeHandler settings into a new version, you can use this function to update the old save files.
updateTimeHandler(tm)
# clear the expired actions and routine
from pythonpackages.nqtr.action import clear_expired_actions
from pythonpackages.nqtr.routine import clear_expired_routine
clear_expired_actions(actions, tm.day)
clear_expired_routine(routine, tm)
# recheck the character's events and commitments in current location
from pythonpackages.nqtr.routine import characters_events_in_current_location
from pythonpackages.nqtr.routine import characters_commitment_in_current_location
cur_events_location = characters_events_in_current_location(cur_location.id, routine, tm, flags)
commitments_in_cur_location = characters_commitment_in_current_location(cur_location.id, routine | df_routine, tm, flags)
# update the quest levels, if ypu add a new stage in the quest, you can use this function to start the new stage
update_quests_levels()
return
```

## Update new version

```bash
git submodule update --init --recursive

```

## Preview

![Navigation](https://github.com/DRincs-Productions/NQTR-System/assets/67595890/6b493f40-d809-46f1-80ee-b2a905f1951d)

![Map](https://user-images.githubusercontent.com/67595890/178110045-34cd7b96-5010-48bb-89a0-5598d5848fb0.jpg)

![Routine](https://github.com/DRincs-Productions/NQTR-System/assets/67595890/f1d04e2a-d38c-443b-a1a7-49e774efb513)