rakugoteam / rakugo-archive Goto Github PK
View Code? Open in Web Editor NEWFramework (inspired by Ren'Py) for story driven games in Godot.
Home Page: https://rakugoteam.github.io/
License: MIT License
Framework (inspired by Ren'Py) for story driven games in Godot.
Home Page: https://rakugoteam.github.io/
License: MIT License
Since Godot is currently in 3.1 beta, with 3.1 scheduled to launch at the end of January, I think it would be interesting to update Ren to work with 3.1 already. I am willing to help with it.
Show and Hide statements like in Ren'Py
Show and Hide statements with support for Node2D, Control, VisualInstance
Like in Ren'Py when user press "Shift + O" in development build
A new Quest Object that will have:
var who = "id of quest giver"
var title = "Quest Title"
var description = "Overall description of quest."
var available = true # or false
var done = "false" # "true" or "in progress"
var stages = {
"stage 1": sub_quest1
"stage 2": sub_quest2
"stage 3": sub_quest3
}
func start() # begin quest
func done("stage id") # finish given sub_quest or full quest if no arg
"[some_var_from_ren]" will become string version of this variable and "{" and "}" are for Ren'Py like makrup tags.
Like in title.
It will work if node is add to Ren.variables by using define func.
It will be Ren.node_call(node_id, func_name, args = [])
.
Statements to execute GDScript statements in right order inside Ren.
"gd:" is like Ren'Py's "$" and "godot:" is like Ren'Py's "python:".
Now Think is bad that in Ren you must use renpy markup language for text and I will add bbcode with {vars} and some extra marks.
"Back" button and mouse scrolll down go backwords to previous statement
Solutions is to use PackedScene with ResourceSaver and ResourceLoader
here is example of this:
https://godotengine.org/qa/31138/saving-a-dictionary-of-scene-states
Some thing like Ren'Py "label".
Define new global variable in ren.vars
using ren.define(val_name, val_value = null, val_type = null)
Ren have play_anim
to play animations, but it don't have statement to stop them.
Statement for this will be add as stop_anim
.
RenTimer Node - it will be timer thats take time form given ren variable.
Like in title the second param should make anim rest if is true, but it doesn't happens.
Move Timers that used to Ren.tscn and make links to it in Ren/main.gd ,
because now they are in over all gui.
Like in title
Like it theme.
Concept example:
var test_ren_var = RenVar.new("test_ren_var", 3) # this will crate also Ren.variables["test_ren_var"].value = 3
test_ren_var.add(6) # or test_ren_var.value += 3 # this will also update Ren.variables["test_ren_var"]
test_ren_var.get_type() # will return Ren.variables["test_ren_var"].type
It scrolls forward to next menu statement using speed from preferences
Statement that alow to "jump" for one Dialog to another.
Class that allow you 'describe' characters in your game.
Easy add to ren.vars
using ren.character(kwagrs = {})
.
Now you can only press left mouse button, space or enter to progress story.
We need add:
After switch project to godot 3.1 mouse left click to go on in dialog stop working
I have an RPG system but it is not complete. It's a plugin for the godot 2 version, I'm using it for my game.
The characteristics that it has is that it solves a little the logic of the items and inventory in a generic way.
At the moment I am working alone on the godot 2 version of the plugin, the godot 3 version I have to adapt from 2.
The plugin is called RPGElments. It is not complete, but can be completed :)
https://github.com/MatiasVME/RPGElements/tree/for-godot-2 <-- this is the branch
"Menu" statement allows player to make choice.
It has to be used with "choice" statement in order to add a choice to the menu.
To use with "end" statement to end what happens after choice and to end menu.
It should work, but it each time it behaves like I selected the first choice even if I selected something else.
My own debugs show the actual choice that I made correctly but then instantly jumps over to the first choice in the menu.
menu(how : rench, what : What want to do?)
create button (Play Visual Novel example) with id : 3
create button (Ask some questions about Ren) with id : 6
final_choice 6
choice(what : Ask some questions about Ren)
say(how : rench, what : Docs are not ready yet)
choice(what : Play Visual Novel example)
say(how : rench, what : Visual Novel example is not ready yet)
end(indentation_delta : 1, end_block : choice)
end(indentation_delta : 1, end_block : choice)
end(indentation_delta : 1, end_block : choice)
end(indentation_delta : 1, end_block : menu)
Add support to write dialogs in JSON like here:
https://www.youtube.com/watch?v=8HOmLNuuccs
How can I test the project?
like Ren'py else statement - works with if statement
Add Range Var Type that can only have value between min and max.
Also Add set_var() func for settings vars.
Some statement to play animations from RenAnim - I will be "anim".
RenAnim will be AnimationPlayer Node that have global Ren id and it will allow to animate ren statements.
Statement like Ren'Py's "if".
Will have the following steps:
Visual Nodes added in ren/visualnodes
-Ask
-Say
-Input
-New Character
-Start(Not needed in VS but still...)
Statements that allows to show and hide nodes on scene.
This nodes are define in ren.values
dictionary.
Hey all, I started a small project for 2D art. First, I'm working on visual novel assets.
Backgrounds (Coming Soon)
I also started a project in this Git ;)
Edited: I'm a decent artist, but I'm just starting to learn GDscript. As this may help me, I'm willing to help ;)
"Skip" button "scrolls forward" statement to next unseen or menu statemnet
Skipping skip every thing even unseen text - option skip unseen text don't change any thing.
Add tutorial similar to that in Ren'Py.
Make similar scripting langue to Ren'Py Langue.
It can base on python fairyscript
Skipping don't skip all story steps with say statement even if they are not in global history.
this statement display notifycaton for player
like Ren'py elif statement - works with if statement
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.