Skip to content
This repository was archived by the owner on May 2, 2025. It is now read-only.
This repository was archived by the owner on May 2, 2025. It is now read-only.

In-game scripting proposal #1

Description

@h4kbas

What's proposed?

Soulbender should have a scripting language called Old Language or something in the name of spells. Each player can learn this and develop their own functionality. They will be wizards of the game but there won't be a real occupation group. Everybody can call themselves whatever they want.

Why it's proposed?

In order the game to be successful in being developed by the gamers and being fully dynamic, this scripting language is an utmost need.

Context

First of all, we need to create a high-level functional more natural language like context-bound scripting language to performs this task. It can be originated from old English or Latin to give it an old aura.

Everything should be created by functions in the language and each function is called "spell". Every player can define spells and store them in their memory (I mean in their char's data structure).

You can cast a spell by activating it with a shortcut if it has such a functionality, you can teach the spell to someone else with a cost of course. Also, you can write a book with a big cost and make the spell distributable. These spell books may(?) contain more than one spells.

If you can teach the spell to someone else, they can cast the spell or teach the spell and write a book from that spell. Basically, they can do whatever you can do with the spell. As the spell books are used, they become tore apart and they need to be fixed.

Each spell can also cast other spells to fulfill its mission (it makes it a basic functional programming language). Of course, casting a total spell has its costs and requirements, too.

Spell makers so called wizards or mages will be the people who like to work on spells and create their own or pursue them on the game. However, everyone can utilize spells and you can learn them from someone or from a book and you can play as a warrior like hero but basically you can still use the spells to do things in the game. The difference is being master at something.

Also, in order a spell to have some functionality, you sometimes may need to depend on nature or physics. Here you need to utilize the basic features of elements. For example, to make something combustive (burnable like wood) or extinguishant (like water putting out fire), you may require some elements as the cost of the function so that you can activate it.

In order to create this nature bound effect, admins will define some basic nature spells to make world and items work properly. Later, they can be used to define new functions.

Important Example to Summarize

For example, there will be some generics in the game explaining physics. Assume that Burnable is a generic and Wood is an element on which Burnable is implemented. Therefore, Wood will expose a function called Burn which is actually a spell you can learn to burn the wood. If you know to burn the wood, you can interfere the nature with a cost and burn it. Also, you can create a new spell casting the wood's Burn spell. By this way, every spell will be basically dependent on the nature when we come into their roots. The roots will either be externed from the game's generics or defined by the admins.

Visual Attachments

[if available, include your visuals with ### heading and add a single line explanation what the visual represents]


Resources

[please provide us resources to make us understand the topic deeply at least 1 needed]

  1. Example Resource Name

Metadata

Metadata

Assignees

No one assigned

    Labels

    proposalThe issue is proposed to be discussedtbaThis issue will be announced with more details

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions