# \[Open-source\] Realm Crafting - Game Editor

**URL:** <https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639>\
**Category:** Demos and projects\
**Tags:** editor, rpg, open-source\
**Created:** [November 12, 2022, 3:22pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639 "2022-11-12T15:22:37Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [November 12, 2022, 3:22pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/1 "2022-11-12T15:22:37Z")

</div>

Hello everyone,

[New Editor] The editor overhaul starts from here:

> [@\[Open-source\] Realm Crafting - Game Editor](https://forum.babylonjs.com/t/open-source-realm-crafting-rpg-editor-redesign-in-progress/35639/98):
>
> Hello, As I stated above, I gave up on Realm-crafting and said I wanted to create a game instead. But in creating this game, I am regularly confronted with having to create tools, small editors. So I come back to telling myself that creating an editor, tools seems essential to create a game. So for several months, I have been thinking about create another editor by reusing what I have already done in part. But this time, I’m going to create a ‘Solo’ game editor. I’m giving up MMORPG which is t…

Here’s a quick overview of this redesign:

> **Summary**
>
> ![2024-12-31 19_25_03-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/7/f/7fdab59bd6e7c152a282c58349586d9fa2ff10bc.jpeg)  
> ![89e3491e88bcaa36ab224694eb3f83a9d6db7ecf_2_690x367](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/1/6/1602d16da50d7a62afa6ebd314c25084f9220043.jpeg)  
> ![2025-01-12 21_04_05-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/b/7/b763712af05f7bef430cbf2d5430eddc25b1bfdd.jpeg)  
> ![GizmoTransform](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/4/e/4e64ad7b122c026e8fa6bfec3d42b74a208bd11a.jpeg)  
> ![projectManager](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/1/f/1f0ccc1bd74dabb854b2c1c0a5702e3a73664521.jpeg)  
> ![2024-12-15 00_54_05-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/f/f/ff61ebb86afeb6a2bb911aad75fca0f4210d8227.jpeg)  
> ![2024-12-15 01_00_24-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/8/b/8beba02a9597d8338f7d333cdc4e8bb2d34213eb.jpeg)  
> ![2024-12-22 18_44_34-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/e/f/ef8dc32cba37a10a73d1a1ba47efc0b2f2ce8cc6.jpeg)  
> ![advenced settings](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/6/0/6046e7cc47359701bc4b4fe35c926cb09009a200.jpeg)

* * *

[OLD Editor] I brought out an old project that dates back to when I started with Babylon 10 years ago. I totally started this project from scratch by going to the essentials and ease of use for the grip.

The work is still in progress, I wanted to present the progress of this new project (or rather old, I don’t really know if it’s new or old)

The approach of this editor is divide into tabs which each have their specific task. Here are most of the tabs in images :

There is still a lot of work to do, but I will still show progress later, when I have a bit more progress.

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [November 12, 2022, 4:02pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/2 "2022-11-12T16:02:36Z")

</div>

I also forgot to show the toolsBox of the project manager which allows access to the terrain editor and the script editor that I plan to do with Google-Blockly to make script creation easy for beginners

 ![2022-11-12 16_50_16-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/6/7/673a2b27e92378691fa7441017c4af1b695577a0.jpeg)

The terrain editor allows you to create terrains of different sizes (64x64, 128x128, 256x256, 512x512, 1024x1024 and 2048x2048 which is the maximum that corresponds to the mixMaterial textures (larger terrain would create images that are too large and therefore pixelation) So you can paint up to 8 diffuse textures, raise mountains, dig rivers, create holes and even create ramps to make gentle slopes.

This terrain can then be exported to the editor in the areas tab. Each zone created can use the terrain made with this editor of terrain.

 ![2022-11-12 16_50_29-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/6/c/6cc5e97cb11060f44f451108493d900c9feecff3.jpeg)

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [December 13, 2022, 4:27pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/3 "2022-12-13T16:27:24Z")

</div>

The project advances. I finished the editor at 99%. But there is still all the game part that the editor generates to do by getting the data from the editor.

Soon I will make that when we create a project, a game demo is created to simplify the handling of the editor.

Some image from the editor:

 ![media](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/5/a/5a9f0027f5ae998f58416a62344215be6e20b6ee.jpeg)  
 ![zone](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/c/c/cc8bede2dbfdf1e12d2fe9f797a1a75eac86cc2e.jpeg)  
 ![interface](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/d/3/d30eba6e33e3bd4e688726068f25cb5944b9ca40.jpeg)

---

<div class="post-metadata">

**Author:** ![mawa](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/mawa/32/12384_2.png) [@mawa](https://forum.babylonjs.com/u/mawa)\
**Post date:** [December 13, 2022, 4:43pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/4 "2022-12-13T16:43:18Z")

</div>

Glad to see you’re back in the game. 🥰 And I think reviving this old project was a good idea. 👏 I’m eager to see what will come out of it once the game part will be implemented. And then, please, don’t forget to make your SAVES 🙏

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [December 13, 2022, 4:49pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/5 "2022-12-13T16:49:54Z")

</div>

The game part is started, but it still remains to do everything the editor says to do.  
And I have the part script by block to do too. 😃

> [@mawa](#):
>
> please, don’t forget to make your SAVES 🙏

I promise I will. I should put this on a GIT repository soon. 👍

---

<div class="post-metadata">

**Author:** ![Ateria](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ateria/32/1351_2.png) [@Ateria](https://forum.babylonjs.com/u/Ateria)\
**Post date:** [December 15, 2022, 6:52am UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/6 "2022-12-15T06:52:02Z")

</div>

Hey Dad! Good to see you’re still around doing this!

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [December 15, 2022, 3:54pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/7 "2022-12-15T15:54:43Z")

</div>

Thank you Ateria. Welcome back to you too after 2 years

---

<div class="post-metadata">

**Author:** ![DRLeria](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/drleria/32/50928_2.png) [@DRLeria](https://forum.babylonjs.com/u/DRLeria)\
**Post date:** [December 15, 2022, 6:57pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/8 "2022-12-15T18:57:48Z")

</div>

Sir, This is really huge!!  
A lot of strength to continue with this incredible project and hoping to see more progress 🚀 🚀 🚀

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [December 15, 2022, 8:28pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/9 "2022-12-15T20:28:20Z")

</div>

Thank you very much DRLeria for your encouragement.

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [January 8, 2023, 4:25pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/10 "2023-01-08T16:25:43Z")

</div>

Hi,

Editor progress. The game is now generated by getting most of the data from the editor. Everything is not done yet, but the base is there.

The login scene: A 3D world can be created as a background (with a fixed camera), which is better than a simple background image.

 ![2023-01-08 16_57_05-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/b/7/b7297c1da8faf34248bc10a87a4a9dae99ee8c6b.jpeg)

Displaying the Setting dialog box to adjust game settings

 ![2023-01-08 16_57_47-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/d/a/da6b08a33f1d15272cbdb70e0e90f65155a8676a.jpeg)

When you log in, you come to a character editor to either create new characters with their appearance or enter the game with characters you have created. Again a 3D world with a fixed camera can be created instead of a background image.

 ![2023-01-08 17_04_19-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/6/7/674481c664f557d891e3fe1771cc108891fff90c.jpeg)

Then we arrive on the game with the scene exactly like what is done in the editor.

At the moment there is not much in the world. just some elements for testing (there are things that are not visible like the sound area or the portals.

Soon I will start creating a real scene and modifying the terrain to create the mountains, rivers…)

 ![2023-01-08 17_06_26-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/3/3/332c03ed740cdd61cb0926ccf82c2d4ab15f1985.jpeg)

There is still a lot of work: creating a real scene, modeling, creating a new character with more animations, because this one is for testing. Create script editor, battle system, trading system and many other things.

---

<div class="post-metadata">

**Author:** ![oriongu](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/oriongu/32/40402_2.png) [@oriongu](https://forum.babylonjs.com/u/oriongu)\
**Post date:** [January 8, 2023, 9:51pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/11 "2023-01-08T21:51:18Z")

</div>

Looks great @Dad72 I’m looking forward to watch your progress.

---

<div class="post-metadata">

**Author:** ![Alexander\_Sosnovskiy](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/alexander_sosnovskiy/32/30165_2.png) [@Alexander\_Sosnovskiy](https://forum.babylonjs.com/u/Alexander_Sosnovskiy)\
**Post date:** [January 9, 2023, 10:30am UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/12 "2023-01-09T10:30:28Z")

</div>

@Dad72 good job! Do you have a plan to publish it a ans open source or it is closed project? I think someone could help you with developing/testing

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [January 9, 2023, 11:26am UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/13 "2023-01-09T11:26:23Z")

</div>

Yes it will be open source. it’s already on a repository but private for now (it’s not a GITHub repository, but bitbucket)

---

<div class="post-metadata">

**Author:** ![mawa](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/mawa/32/12384_2.png) [@mawa](https://forum.babylonjs.com/u/mawa)\
**Post date:** [January 9, 2023, 11:59am UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/14 "2023-01-09T11:59:41Z")

</div>

Awesome progress 😄

> [@Dad72](#):
>
> There is still a lot of work:

I can see that from your list 😅. I shall send you strength and courage 😁

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [January 16, 2023, 6:15pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/15 "2023-01-16T18:15:24Z")

</div>

The script editor is finished. I just have to add/finish all the commands of script.

The editor is quite simple, but it allows autocompletion, real-time error reporting and others.

I had logically planned to add another code editor per block, but after some work on it, I realize that it doesn’t make things any easier more for the user. So I dropped this second block editor. In addition, there are too many blocks to create which makes the work tedious.

In short, result in image :

 ![2023-01-16 18_57_27-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/8/6/86b0d0914aa2db69b1b162660d9301c0cbc62c4f.jpeg)

---

<div class="post-metadata">

**Author:** ![Alexander\_Sosnovskiy](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/alexander_sosnovskiy/32/30165_2.png) [@Alexander\_Sosnovskiy](https://forum.babylonjs.com/u/Alexander_Sosnovskiy)\
**Post date:** [January 17, 2023, 8:37am UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/16 "2023-01-17T08:37:52Z")

</div>

I used to work with codemirror + esbuild-wasm which allow writing TypeScript code + autocompletion + linting.

Do you use anything under the hood or it is 100% custom?)

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [January 17, 2023, 11:50am UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/17 "2023-01-17T11:50:15Z")

</div>

The script editor is 100% custom. I use Codemirror + jshint to recover errors. But no typeScript, no esbuild-wasm.

The programming code is specific and comes with script commands to simplify in conjunction with the game. But Babylon code can also be used for more experienced users.

---

<div class="post-metadata">

**Author:** ![mawa](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/mawa/32/12384_2.png) [@mawa](https://forum.babylonjs.com/u/mawa)\
**Post date:** [January 17, 2023, 1:21pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/18 "2023-01-17T13:21:37Z")

</div>

> [@Dad72](#):
>
> it allows autocompletion, real-time error reporting and others

C’est de la balle 😃 GJ,

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [January 29, 2023, 6:02pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/19 "2023-01-29T18:02:42Z")

</div>

HI,

I made some improvement of the project manager and many corrections/additions in the editor. I also started to create the demo with 4 terrains, including a terrain for the Login scene, a terrain for the character creation and the other two terrains for the game linked by portals.

I just wanted today to show the result of the improvement of the project manager with the banner that I made entirely in css, including background a degrade, a text with a specific font which also has a degrade + a shadow and a clarification.  
I also added empty lines on the project list rather than an all-white background.  
Then in the list of tools I changed the icons to make it all clearer.

I hope soon to show the terrains with the scenery.

 ![2023-01-29 18_35_29-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/8/4/84bf61156eac898ade3e117d484ab34a7fa9d0f9.jpeg)

 ![2023-01-29 18_35_32-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/7/c/7c1c1ea9597fc33d64d065fdc13174ceb3963fe6.jpeg)

I have a little less advanced his last two weeks. I undertook to redo the floor of my carpentry workshop, so I have more than 2 to 3 hours of time on my editor per day at the moment.

---

<div class="post-metadata">

**Author:** ![Dad72](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/dad72/32/13_2.png) [@Dad72](https://forum.babylonjs.com/u/Dad72)\
**Post date:** [February 5, 2023, 3:41pm UTC](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639/20 "2023-02-05T15:41:05Z")

</div>

I reviewed the particle editor to add the ability to add sub-emitters. It wasn’t easy, but I’m glad I succeeded.

The tabs had to be added dynamically when creating a sub-transmitter and to keep the interface for each tab added while making the modifications affect the active sub-transmitter. It was also necessary that the canvas always be displayed above each tab.  
Of course, sub-emitters don’t work with GPU particles, so there are two ways to create particle systems with a ‘create single emitter’ button and another ‘create multi emitter’ button. for a CPU or GPU system

When you change the tab to see a sub-transmitter, only this sub-transmitter is played to edit each sub-transmitter independently. And when we return to the primary transmitter (the first tab), we can see the whole being played.

The editor of particles uses the BABYLON.ParticleHelper for saving to a json file.

**Emitter Main**

 ![2023-02-05 16_10_33-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/f/b/fb37c2b05121b7ae92949f313aaa0002c04d4b76.jpeg)

**Sub-emitter 1**

 ![2023-02-05 16_11_10-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/d/d/dd645d6894904e50b4b6b88cab333267bd46c947.jpeg)

**Sub-emitter 2**

 ![2023-02-05 16_11_08-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/e/e/ee7b2681631a4a7592fe17d0ee293a627e2c7de2.jpeg)

**Sub-emitter 3**

 ![2023-02-05 16_12_13-Greenshot](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/f/7/f7ad2006066c8c180e89add57c9021c4428e9aa7.jpeg)

[Next page](https://forum.babylonjs.com/t/open-source-realm-crafting-game-editor/35639.md?page=2)
