A game engine for top-down 2D RPG games.
rpg
game-engine
raylib
c99
1
2Keraforge
3=========
4
5A game engine for top-down 2D RPG games.
6
7[Warning]
8Keraforge is still a work-in-progress. Expect breaking
9changes!
10
11Motive
12------
13
14 There's already a large number of quality game engines
15and frameworks in the wild, so what does Keraforge do
16differently?
17
18 Design:
19 Keraforge is designed with a specific kind of game in
20 mind: top-down, story-driven, handcrafted RPGs. If your
21 dream game fits in this category, then Keraforge aims to
22 help make it a reality.
23
24 Simplicity:
25 Game engines and frameworks always have a learning
26 curve. Keraforge is no exception. What I can aim for,
27 though, is keep the learning curve from being exponential
28 and overwhelming users. I want Keraforge to allow anyone
29 to share their story with an engine that gives them the
30 ability to pour love into their work.
31
32 Cost:
33 Keraforge is 100% free (BSD 3-Clause), zero royalties,
34 no up-front costs, and no paywalls. I want to give people
35 the chance to create something beautiful, not to take
36 their money.
37
38 It's also important to discuss the cons of Keraforge.
39It's going to be fundamentally different from any other
40engine since it's made for a very specific style of game.
41This means that if your game does not fit this style, you
42might have more trouble.
43
44Usage
45-----
46
47 Pre-built binaries are not *yet* distributed. I'll start
48publishing binaries once the engine reaches a stable state.
49For now, you can compile it yourself. See the section on
50development below.
51
52 If you want to see my development progress, see <todo>.
53
54Develop
55-------
56
57 Build "system" is contained in a folder of shell scripts,
58`scripts`. You can run these with the `run.sh` script to
59run multiple tasks in order. Generally:
60 `sh run.sh build run`
61is all you'll need to run while developing.
62
63 Please note that I will be hesitant to accept PRs to this
64codebase. I am very nitpicky with my code style and if your
65PR does not match it (or if it goes out-of-scope, adds
66useless/redundant functions, further pollute global scope,
67etc), then I will likely decline the PR or request a number
68of changes. Ideally, please communicate with me before
69submitting a PR just for it to get closed. You can find my
70contact information on my website. I don't want you wasting
71your time or effort!
72
73 Additionally, please read through <etc/style.txt> before
74attempting to contribute. It'll make your life much easier
75if you understand my style *before* attempting a PR.
76
77License
78-------
79
80BSD 3-Clause, see <license>.