# Is there a package for creating custom world

**URL:** <https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883>\
**Category:** Modelling & Simulations\
**Created:** [August 5, 2021, 12:55pm UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883 "2021-08-05T12:55:59Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![development\_mentor](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/development_mentor/32/26533_2.png) [@development\_mentor](https://discourse.julialang.org/u/development_mentor)\
**Post date:** [August 5, 2021, 12:55pm UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883/1 "2021-08-05T12:55:59Z")

</div>

I’m searching for a package that could create a 3D or 2D costume world. Something like the game world, in which you or artificial agent could interact with the environment. Which would follow rules specified by the creator.  
So a tool for creating a reinforcement learning environment.

---

<div class="post-metadata">

**Author:** ![nilshg](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nilshg/32/2283_2.png) [@nilshg](https://discourse.julialang.org/u/nilshg)\
**Post date:** [August 5, 2021, 1:15pm UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883/2 "2021-08-05T13:15:23Z")

</div>

I think the closest I’m aware of that fits the bill for this and your other related question is

[https://juliadynamics.github.io/Agents.jl/stable/examples/zombies/](https://juliadynamics.github.io/Agents.jl/stable/examples/zombies/)

---

<div class="post-metadata">

**Author:** ![gustaphe](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/gustaphe/32/18174_2.png) [@gustaphe](https://discourse.julialang.org/u/gustaphe)\
**Post date:** [August 5, 2021, 1:21pm UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883/3 "2021-08-05T13:21:13Z")

</div>

I’m not sure your question is well defined. Unless “costume world” means something specific in a specialized field, you’re going to have to specify exactly what you need.

I can create a world without any packages, just define a struct with a boolean ref parameter `isnight` and a function `wait12h` which flips it.

---

<div class="post-metadata">

**Author:** ![development\_mentor](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/development_mentor/32/26533_2.png) [@development\_mentor](https://discourse.julialang.org/u/development_mentor)\
**Post date:** [August 5, 2021, 1:30pm UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883/4 "2021-08-05T13:30:47Z")

</div>

If that helps, I want to create an enviroment for Reinforcement Learning agent. That could be seen on the computer screen not just as a number output in the repl. So it would be possible to see agents training in real time

---

<div class="post-metadata">

**Author:** ![gustaphe](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/gustaphe/32/18174_2.png) [@gustaphe](https://discourse.julialang.org/u/gustaphe)\
**Post date:** [August 5, 2021, 1:47pm UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883/5 "2021-08-05T13:47:21Z")

</div>

How you visualize an agent depends a lot on the agent. Do you want to show the decision boundaries of a classifier? Or the progress of a walking bot? Or simply the activation values of the nodes in a neural network?

I would begin by planning out what my agent will do and what its parameters will be, and _then_ worry about visualizing it.

---

<div class="post-metadata">

**Author:** ![Skoffer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/skoffer/32/378_2.png) [@Skoffer](https://discourse.julialang.org/u/Skoffer)\
**Post date:** [August 5, 2021, 1:51pm UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883/6 "2021-08-05T13:51:26Z")

</div>

Have you looked at repos in this organization [https://github.com/JuliaReinforcementLearning](https://github.com/JuliaReinforcementLearning)?

They have some tools for world generation.

---

<div class="post-metadata">

**Author:** ![mohamed82008](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mohamed82008/32/18171_2.png) [@mohamed82008](https://discourse.julialang.org/u/mohamed82008)\
**Post date:** [August 5, 2021, 1:51pm UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883/7 "2021-08-05T13:51:46Z")

</div>

Sounds like you want a gaming engine. Check [Game development in Julia with GameZero.jl | Workshop | JuliaCon 2021 - YouTube](https://www.youtube.com/watch?v=ar7wCVlncKE).

---

<div class="post-metadata">

**Author:** ![development\_mentor](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/development_mentor/32/26533_2.png) [@development\_mentor](https://discourse.julialang.org/u/development_mentor)\
**Post date:** [August 6, 2021, 5:11am UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883/8 "2021-08-06T05:11:03Z")

</div>

Yes, game engine is what I’m looking for. But I need something more advanced. Something with which you can make complex enviroments. Like Unreal Engine for example

---

<div class="post-metadata">

**Author:** ![mohamed82008](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mohamed82008/32/18171_2.png) [@mohamed82008](https://discourse.julialang.org/u/mohamed82008)\
**Post date:** [August 6, 2021, 6:35am UTC](https://discourse.julialang.org/t/is-there-a-package-for-creating-custom-world/65883/9 "2021-08-06T06:35:36Z")

</div>

I don’t think we have anything near Unreal Engine in Julia. But you can find a way to use Julia code inside UE.
