Giter VIP home page Giter VIP logo

voxel's People

Contributors

danirod avatar guerra24 avatar jlitewski avatar p5to avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

voxel's Issues

Error loading Window icon

Display try to load icon from .jar file.

java.io.FileNotFoundException: file:\C:\..\..\Voxel-0.0.4-ALPHA\lib\Voxel-0.0.4-ALPHA.jar!\assets\icon\icon32.png (The filename, directory name, or volume label syntax is incorrect)
        at java.io.FileInputStream.open0(Native Method)
        at java.io.FileInputStream.open(Unknown Source)
        at java.io.FileInputStream.<init>(Unknown Source)
        at java.io.FileInputStream.<init>(Unknown Source)
        at io.github.guerra24.voxel.client.kernel.graphics.opengl.Display.loadIcon(Display.java:413)
        at io.github.guerra24.voxel.client.kernel.graphics.opengl.Display.startUp(Display.java:341)
        at io.github.guerra24.voxel.client.kernel.core.Kernel.init(Kernel.java:85)
        at io.github.guerra24.voxel.client.kernel.core.Kernel.mainLoop(Kernel.java:125)
        at io.github.guerra24.voxel.client.kernel.core.Kernel.<init>(Kernel.java:77)
        at io.github.guerra24.voxel.client.kernel.bootstrap.Bootstrap.main(Bootstrap.java:119)

2D UI Scale errors

The NanoVG UI system has errors in scaling into multiple resolutions.

Ramdomly UpdateChunksRender gets NullPointerException

In random moment the "Voxel Thread" gets a NullPointerException

Exception in thread "Voxel Main" java.lang.NullPointerException
    at io.github.guerra24.voxel.client.kernel.world.DimensionalWorld.updateChunksRender(DimensionalWorld.java:247)
    at io.github.guerra24.voxel.client.kernel.core.Kernel.render(Kernel.java:172)
    at io.github.guerra24.voxel.client.kernel.core.Kernel.mainLoop(Kernel.java:151)
    at io.github.guerra24.voxel.client.kernel.core.Kernel.<init>(Kernel.java:88)
    at io.github.guerra24.voxel.client.kernel.bootstrap.Bootstrap.main(Bootstrap.java:119)

Rewrite the Voxel Engine

Issue to keep track of the Voxel rewrite.

Changes

Status Change Priority
finished Optimize Game Loop High
finished Deferred Shading High
finished Singleton #42 Medium
finished Change Chunk Rendering Medium
finished Separate entities rendering of the world rendering Medium
finished Change Chunk Mesh Creation Medium
finished Change Physics System Medium
finished Change Player movement Medium
for next release glViewport #33 Medium
finished Change World System Low
finished Bind Player and Camera in one object Low
finished New Mod System Low

Any other changes or suggestions please write a comment

Changelog:

Build-156 92a0c9e :
Changes
@Guerra24: Add ModStateLoop for mods
@Guerra24: Mods are now instanced one time
@Guerra24: New PCF Shadow Mapping

BugFixes
@Guerra24: Fixed Volumetric Light sun position

Build-155 70d2f3f :
Changes
@Guerra24: Better Parallax Texture
@Guerra24: Add an extra pass to Deferred Shading (Final1)
@Guerra24: NoMoreRabbitPhysics, a new physics movement and speed calculation
@Guerra24: VelocityComponent now uses Vector3f instead of 3 floats

BugFixes
Display incorrectly setting "Resizable" option.

Build-154 8bd8890 :
Changes
@Guerra24: NoMoreStaticDisplay, now display is like any other object
@Guerra24: Display now uses a ContextFormat for OpenGL context
@Guerra24: Display is now a sub-object of Window
@Guerra24: Moved a lot of Display objects to Window object
@Guerra24: Now can create multiple Displays
@Guerra24: Removed a lot of old files

Build 153 f6cc1b6 :
Changes
@Guerra24: All the assets now are stored in the jar, so the external assets folder only stores generated data like worlds, configuration, mods, etc
@Guerra24: Some changes to Sound System code

BugFixes
@Guerra24: Quick fix to Parallax Mapping not compiling in non NVIDIA graphic cards (issue #47)

Build 152-2 547a68a :
@Guerra24: Removed Deprecated Objects
@Guerra24: Better Block Face Culling.

Notes:
GUI Renderer, TextHandler and any OpenGL text system where replaced by NanoVG Rendering System.
Blocks now has a "isTransparent" boolean to check face culling.

Build 152-1 9bd9a2b :
Changes
@Guerra24: Reduced effect of parallax mapping.
@Guerra24: Testing wet surface in blocks.
@Guerra24: Add JavaDoc task to build.gradle.
@Guerra24: Player velocity now are clamped to 2.
@Guerra24: Ice now has lower velocity reduction.
@Guerra24: Entities now slide on ice.

BugFixes
@Guerra24: Fixed JUnit Tests.
@Guerra24: Fixed game settings not saving the correct version of the file.
@Guerra24: Fixed player unable to jump inside water or swim.

Build 151 9a9dc90 :
@danirod: Finally GameResources is a Singleton. Only a single instance of GameResources can exist at the same time in the game (fixes #42)
@danirod: Some multithreading issues related to non-concurrent ArrayLists have been fixed

Build 150 ed094b3 :
@Guerra24: More JUnit Test
@Guerra24: Better Debug Screen

Build 149 2fc7224 :
@Guerra24: Debug Screen In Game

Build 148 b33425f :
@Guerra24: JUnit test with OpenGL and some changes
@Guerra24: Now shadow is more darker
@Guerra24: GUIRenderer marked as Deprecated
@Guerra24: TextHandler marked as Deprecated

Build 147 49af74e :
@Guerra24: Add Normal Mapping
@Guerra24: Parallax Mapping support
@Guerra24: New options

Build 146 4e00e8c :
@Guerra24: Removed NitroNet
@Guerra24: New World Selection Screen (WIP)

Build 145:
@Guerra24: Fixed Friction Based Physics 168e41a
@Guerra24: New HDR b3c576b
@Guerra24: Color Correction b3c576b

Build 144 6f265e0 :
@Guerra24: Better Glow
@Guerra24: Updated Year in License.

Build 143 8a8dc2e :
@Guerra24: Particle rendering now uses glDrawArraysInstanced
@Guerra24: Fixed bug in GlobalStates in case of setting an already set state.

Build 142 815e709 :
@Guerra24: New Options Menu Background
@Guerra24: New Slider for Menus
@Guerra24: New Draw Distance Selector
@Guerra24: New Collision and Physics System.

Build 141 01dfcf3 :
@Guerra24: Fixed NanoVG crash #46
@Guerra24: New WebRenderer to Main Menu news
@Guerra24: New Custom Mouse Cursor
@Guerra24: Water now are 4 quads instead of 1
@Guerra24: New Options Menu.

Build 140 b8b66af :
@Guerra24: Add Ashley as ECS
@Guerra24: Add Log4J as new logger
@Guerra24: New Velocity Based Physics system
@Guerra24: Fixes in entity rendering.

Build 139:
@Guerra24: Fixed caves generation 7828a19
@Guerra24: Merged more features from Infinity 3f851e5
@Guerra24: Fixed torch light 3f851e5
@Guerra24: Fixed Volumetric Light 3f851e5
@Guerra24: Fixed Options button in pause menu 3f851e5
@Guerra24: Biomes test in progress c58ac8f
@Guerra24: Add License to a lot of files c58ac8f
@Guerra24: Add options menu In Game c58ac8f

Build 138 f2d4730 :
@Guerra24: Fixed NanoVG Crash
@Guerra24: New Buttons
@Guerra24: Merged features from Infinity

Build 137:
@Guerra24: Add NanoVG Support 5ce0652
@Guerra24: Now water receives shadows 392da72
@Guerra24: Some Fixes with Occlusion Culling 392da72
@Guerra24: Fixed Projection Matrix on Tessellator shadow rendering e8fef92
@Guerra24: Add Occlusion Culling 3755621
@Guerra24: Chunk Sort from distance 3755621

Build 136 d599700 :
@Guerra24: Particles now supports alpha blending

Build 135:
@Guerra24: Pre Release 1 b81fe1a
@Guerra24: Bloom FX b9fee81

Build 134 91ff130 :
@Guerra24: New Procedurally Generated Waves

Build 133:
@Guerra24: Add Final pass to Deferred Shading/Lighting 7c9fbe4
@Guerra24: Fixes in shadows 355e196
@Guerra24: Changes to game states 355e196
@Guerra24: Changes in Game Settings 355e196
@Guerra24: Fixes in main loop 4c88c6d
@Guerra24: Shadows fully implemented in Tessellator 4c88c6d
@Guerra24: Updated readme and version bump abda0d8

Build 132:
@Guerra24: Block light is now loaded to shaders efede9d
@Guerra24: Tessellator now supports Specular and Screen Space Reflections efede9d
@Guerra24: Possible HDPI Fix efede9d
@Guerra24: Block system re-write b60de24
@Guerra24: Now block textures are only in one file b60de24
@Guerra24: Add Tessellator Texture Atlas System b60de24
@Guerra24: Fixed Tessellator Face Up b60de24
@Guerra24: Now Chunk blocks use Tessellator on all faces b60de24
@Guerra24: Fixed Tessellator vertex instability on large positions 6d82535
@Guerra24: Modding system based on annotations and refletions 4ab2093

Build 131 17c3f7e :
@Guerra24: Now runs only in one thread
@Guerra24: TextMasterRenderer are now singleton
@Guerra24: Tessellator default cube are broken in top and bottom face, disabled for now
@Guerra24: Chunk top and bottom blocks face still uses the old fixed object mesh, the other faces uses the new Tessellator dynamic mesh generation
@Guerra24: Fixed Crash in case of data updated in the Tessellator

Build 130 04d9e9a :
@Guerra24: Tessellator, a dynamic mesh generator

Build 129:
@danirod: Gradle: automatically add XstartOnFirstThread argument if is running on OS X #45
@Guerra24: Now game settings are saved to a file 9ffde84

Build 128 66229ba :
@Guerra24: Fixed FOG
@Guerra24: In case of Shader Syntax Error Throws an IllegalStateException

Build 127:
@Guerra24: Fixed OpenAL Issue related to latest LWJGL3 Build 1028c39
@Guerra24: Fixed Transparency 5d71d44
@Guerra24: Fixed Sun position in screen space 5d71d44
@Guerra24: Block Picking working e041669
@Guerra24: New gData texture e041669
@Guerra24: Fixed Block Light e041669
@Guerra24: New Particle System 495d0df

Build 126 9b75642 :
@Guerra24: New Multi-Pass Deferred Shading
@Guerra24: Started the new Mod System

Build 125:
@Guerra24: New Sun/Moon b23419f
@Guerra24: Add 2D Volumetric Light b23419f
@Guerra24: Removed Unused files b23419f
@Guerra24: Re factor Main Menu and Options Menu b23419f
@Guerra24: Fixed LWJGL Version 297708b
@Guerra24: New Composite pass to Deferred Shading e8e2128

Build 124 b08bd42 :
@Guerra24: New Ice Block
@Guerra24: Better Screen Space Reflections
@Guerra24: Now BlockID is loaded to shaders
@Guerra24: New Sun/Moon fully generated in GPU

Build 123 f346f81 :
@Guerra24: Screen Space Reflections

Build 122 455fd1d :
@Guerra24: Fixes in Deferred Shading/Rendering
@Guerra24: Dof working

Build 121 05e07ca :
@Guerra24: Deferred Shading/Rendering

Build 120 dc5b5a6 :
@Guerra24: Add Motion Blur and Bloom

Build 119 437ff86 :
@Guerra24: Slick2d is removed due to new texture loading system
@Guerra24: LWJGL now is downloaded by Gradle
@Guerra24: Removed LWJGL Natives
@Guerra24: Fixed the depth texture in post processing
@Guerra24: FXDOF modified

Build 118 ee35740 :
@Guerra24: Disabled HQWater and Shadows in OSX devices
@Guerra24: Can enable or disable the HQWater, Shadows, FXAA and DOF

Build 117 009b79f :
@danirod: Fixed Fragment Shader

Build 116 820e347 :
@danirod: Argument names and autostart

Build 115 d047043 :
@danirod: Extract logic into States

Re-Write The Chunk management

For a good handling of 3D Chunk generation and position, to remove the generation lag and high cpu usage and fast chunk loading.

net.luxvacuos.voxel.client.core.exception.CompileShaderException: 0(22) : error C0204: version directive must be first statement and may not be repeated

Hello!, i just found your project and when i tried to run it from your snapshot launcher got an exception.

Voxel has crashed, please report this in the Forum or GitHub Repo

## System Info
Voxel Version: 0.0.10-develop-d9a920b
Molten API Version: 0.0.2
Build: 6
Running on: Windows 10 AMD64
LWJGL Version: 3.0.0 build 90
GLFW Version: 3.2.0 Win32 WGL EGL VisualC DLL
OpenGL Version: 3.3.0 NVIDIA 368.22
Vulkan Version: No Available
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 570/PCIe/SSE2

## StackTrace
net.luxvacuos.voxel.client.core.exception.CompileShaderException: 0(22) : error C0204: version directive must be first statement and may not be repeated

    at net.luxvacuos.voxel.client.rendering.api.opengl.shaders.ShaderProgram.loadShader(ShaderProgram.java:329)
    at net.luxvacuos.voxel.client.rendering.api.opengl.shaders.ShaderProgram.<init>(ShaderProgram.java:105)
    at net.luxvacuos.voxel.client.rendering.api.opengl.shaders.EntityBasicShader.<init>(EntityBasicShader.java:36)
    at net.luxvacuos.voxel.client.rendering.api.opengl.MasterShadowRenderer.<init>(MasterShadowRenderer.java:52)
    at net.luxvacuos.voxel.client.resources.GameResources.init(GameResources.java:135)
    at net.luxvacuos.voxel.client.core.Voxel.init(Voxel.java:107)
    at net.luxvacuos.voxel.client.core.Voxel.mainLoop(Voxel.java:125)
    at net.luxvacuos.voxel.client.core.Voxel.<init>(Voxel.java:63)
    at net.luxvacuos.voxel.client.bootstrap.Bootstrap.main(Bootstrap.java:119)

Animal Ideas

Animals

Now that I know the mechanics, let's collect some ideas for animals to fill the world with. I will try to update the state of ideas in the first post. Feel free to comment, add ideas or tell me why mine suck aren't so good. I might try to include some ridiculous ideas, just to see where the borders are. ;)

Guinea Pig

Status: in progress

Role

  • test animal (muahaha... no, I mean for learning how to work with your code...and maybe feeding them to predators to test their hunting skills^^)
  • prey for other animals
  • small food source for players

Behaviour

  • will try to stay close to other guinea pigs
  • when sensing larger entities, it freezes or runs for cover behind blocks
  • tries to pick up small food items like wheat or carrots (or whatever crops will exist -> next issue?)

Stats/Abilities

  • low health
  • very low attack damage
  • moderate walk speed, can sprint short distances
  • good swimming
  • small and bad climber -> cannot cross full blocks

Inventory scale on aspect ratio

Running Voxel on non 16:9 aspect ratio can cause scaling errors in the position of the items that are displayed in the inventory.

ss 2016-04-08 at 11 26 27
ss 2016-04-08 at 11 27 04

Massive Sky graphical glitch

A massive sky graphical glitch caused by an Intel HD... Confirmed on Linux. OSX and Windows don't confirmed. Discovered by @TheOnlySilverClaw .

EDIT: This error cannot be reproduced in OSX. So its related to some issues with Linux and Intel HD, mostly from the poor OpenGL 3.x support on Intel HD.

ss 2016-04-07 at 11 19 54

Shadows Maps bug

Shadows Maps is unable to create because the size is more that the GPU supports.
By default shadows maps has a resolution of 4K.
In the next image you can see that everything is black, that is because the shader can't read the shadow map, here the shadow map is 8,196, my GPU only supports 8K (8,192).

ss 2016-01-28 at 01 20 42

Here you can see the working shadow map running at 4K.

ss 2016-01-28 at 01 33 27

Finish torch lighting

Finish the torch light, actually you can place torch and light updates but if you remove that torch the light still making objects bright.

FragmentTesselator gone nuts

Can confirm FragmentTesselator is also broken on Windows.

What happened:

Fragment shader failed to compile with the following errors:
ERROR: 0:74: error(#160) Cannot convert from: "2-component vector of vec2" to: "highp float"
ERROR: error(#273) 1 compilation errors.  No code generated
Exception in thread "Voxel Main" java.lang.IllegalStateException: Syntax Error in FragmentTessellator.glsl
        at net.guerra24.voxel.client.graphics.shaders.ShaderProgram.loadShader(ShaderProgram.java:309)
        at net.guerra24.voxel.client.graphics.shaders.ShaderProgram.<init>(ShaderProgram.java:105)
        at net.guerra24.voxel.client.graphics.shaders.TessellatorShader.<init>(TessellatorShader.java:60)
        at net.guerra24.voxel.client.graphics.shaders.TessellatorShader.getInstance(TessellatorShader.java:39)
        at net.guerra24.voxel.client.resources.GameResources.init(GameResources.java:129)
        at net.guerra24.voxel.client.core.Voxel.init(Voxel.java:117)
        at net.guerra24.voxel.client.core.Voxel.mainLoop(Voxel.java:156)
        at net.guerra24.voxel.client.core.Voxel.<init>(Voxel.java:70)
        at net.guerra24.voxel.client.bootstrap.Bootstrap.main(Bootstrap.java:111)
 FAILED

What should happen:

The game should open.

System specs:

  • OS: MS Windows 10
  • CPU: Intel Xeon E5606
  • Card: ATI Radeon HD 5400 Series
  • RAM: 16 GB

Use doubles instead of floats

Actually all the coordinates system (collisions, position, physics) uses floats, this is causing round errors in large positions. Also the vertex positioning uses floats put here i cant do anything because OpenGL 3.3 don't have doubles support by hardware, it can be done by software but the performance will be reduced. So for coordinates system will be using doubles, in the errors caused by this are the map size, the collision system can't allow the player to move far (1,000,000+) due of this.

"-autostart" causes NullPointerException

Random NullPointerException in the switch from "Loading Screen" to "GameSP", Causes by the "-autostart" flag.

Exception in thread "Voxel Main" java.lang.NullPointerException
    at net.guerra24.voxel.client.graphics.shaders.ShaderProgram.loadVector(ShaderProgram.java:218)
    at net.guerra24.voxel.client.graphics.shaders.EntityShader.loadLightPosition(EntityShader.java:125)
    at net.guerra24.voxel.client.graphics.MasterRenderer.begin(MasterRenderer.java:164)
    at net.guerra24.voxel.client.core.states.GameSPState.render(GameSPState.java:64)
    at net.guerra24.voxel.client.core.GlobalStates.doRender(GlobalStates.java:55)
    at net.guerra24.voxel.client.core.Voxel.render(Voxel.java:166)
    at net.guerra24.voxel.client.core.Voxel.mainLoop(Voxel.java:153)
    at net.guerra24.voxel.client.core.Voxel.<init>(Voxel.java:72)
    at net.guerra24.voxel.client.bootstrap.Bootstrap.main(Bootstrap.java:119)

Change Rendering Object System

Now instead of only an one "*Renderer" will be an abstract and then depending of the api (OpenGL or Vulkan) will use the specific rendering pipeline.

NanoVG Random Crashing

NanoVG rendering crashes at least the 80% of the time. There multiple type of crash:

  • JVM Fatal Error
  • JVM Freezes on random moments and crashes
  • JVM instant Fatal Error on load

Corrupted area in negative "Y"

If the player is in negative "Y" will enter in a corrupted area, random blocks will apear and are not renderer, the player can interact with it, place, move and all efects are aplied, example: distrotion under water.

Animal Mechanics

How should animals work?

Let's fill this world with some live by adding a bunch of animals.
At this stage of development, we have to figure out how complex the animals should be and what roles they should play.
This issue is for collecting and discussing ideas about animals in general.

Spawning/Population

What determines where animals show up and how many?
Should they just spawn randomly?
Do they mate by themselves (might cause overpopulation and lag if not handled properly!) or do they rely on player interaction?
Do animals only spawn on chunk generation or can they appear later, too?

Foodchain

Are animals just decoration or do they provide resources for players?
Do animals require food?
Can they eat grass, fruits, crops, etc.?
Can animals hunt each other?
Can animals attack or defend against players or hostile creatures?

Functions

What are animals good for? Can they be tamed?
Can they be ridden? Do they require a saddle or special skills?
Can animals assist in combat? Can they wear armour or other upgrades?
Can they pull wagons or carry items?

Crash al intentar suicidarme

Voxel has crashed, please report this in the Forum or GitHub Repo

System Info

Voxel Version: 0.0.10-develop-88799b6
Molten API Version: 0.0.1
Build: 5
Running on: Linux AMD64
LWJGL Version: 3.0.0 build 90
GLFW Version: 3.2.0 X11 GLX EGL clock_gettime /dev/js Xf86vm shared
OpenGL Version: 3.3 (Core Profile) Mesa 11.2.0
Vulkan Version: No Available
Vendor: Intel Open Source Technology Center
Renderer: Mesa DRI Intel(R) Haswell Desktop

StackTrace

java.util.concurrent.RejectedExecutionException
at java.util.concurrent.ForkJoinPool.externalSubmit(ForkJoinPool.java:2328)
at java.util.concurrent.ForkJoinPool.externalPush(ForkJoinPool.java:2419)
at java.util.concurrent.ForkJoinPool.execute(ForkJoinPool.java:2648)
at net.luxvacuos.voxel.client.world.DimensionService.add_worker(DimensionService.java:34)
at net.luxvacuos.voxel.client.world.chunks.Chunk.update(Chunk.java:129)
at net.luxvacuos.voxel.client.world.Dimension.updateChunksGeneration(Dimension.java:152)
at net.luxvacuos.voxel.client.core.states.GameSPState.update(GameSPState.java:71)
at net.luxvacuos.voxel.client.core.GlobalStates.doUpdate(GlobalStates.java:72)
at net.luxvacuos.voxel.client.core.Voxel.update(Voxel.java:196)
at net.luxvacuos.voxel.client.core.Voxel.mainLoop(Voxel.java:160)
at net.luxvacuos.voxel.client.core.Voxel.(Voxel.java:70)
at net.luxvacuos.voxel.client.bootstrap.Bootstrap.main(Bootstrap.java:119)

The Great Refactoring

Progress Report:

  • Core
    • Settings (PR #75) - v0.0.10
    • Resources
    • Scripting
  • World (PR #77) (In progress, Mostly implemented by @Guerra24)
    • Client Side render implementations - v0.0.10
    • Dimension (PR #77) - v0.0.10
    • Chunk (PR #77) (Currently debugging) - v0.0.10
    • Block (PR #77) - v0.0.10
  • ECS
    • Entities
    • Components (Partially Done) (PR #76 ...)
    • Systems
  • Utilities

Better solutions than enchantments.

As the title says, since I think enchantments are a really uninspired way of upgrading weapons and armour (and enchantment tables in a smithy look ridiculous), I want to suggest replacements for most of them:

General

  • Unbreaking: Refined steel.
  • Mending: Maybe some metal-magician spell?

Armour

  • Protection: Thicker armour, various spells.
  • Fire protection: Leather armour, pyromancer armour.
  • Feather falling : Do we really need that? I'm not sure....uhm...jetpacks? Trying not to fall down? A rope?
  • Blast protection : Heavier, lined armour.
  • Projectile Protection: Solid armour, e.g. plate instead of chain-mail.
  • Respiration: A diving bell?
  • Aqua affinity: hmmm....freeze the water?
  • Thorns: Obviously, put some spikes on armour.
  • Depth Strider: A boat! Better, ships!
  • Frost Walker: Cryomancers do that anyway.

Sword

  • Sharpness: Use a whetstone to actually sharpen weapons.
  • Smite: Holy weapons like a Holy Cross? Light magic/blessings.
  • Bane of Arthropods: Not that useful, since there is more animal/monster variety than in Minecraft. Instead, use fire if you really hate spiders.
  • Knockback: Blunt weapons like maces.
  • Fire Aspect: Fight with a torch or be a pyromancer.
  • Looting: Use better tools to loot corpses, for example a skinning knife to get more leather.

Bow

  • Power: Use better arrows, bows or a crossbow instead.
  • Punch: Use heavier arrows, bow with more drawing power or a crossbow instead.
  • Flame: Craft flammable arrows (with oil, steel wool, etc.) or use pyromancy.
  • Infinity: Use a boomerang instead?

Fishing Rod

  • Luck of the Sea: Implement a better system for getting treasures then by fishing!
  • Lure: Use insects or pieces of meat as actual lure.

Tools

  • Efficiency: Use explosives to clear away large areas of stone.
  • Silk Touch: Unnecessary, in my opinion.
  • Fortune: Use better furnaces to smelt ore.

To summarize it, instead of using enchantments, I vote for a more advanced metallurgy system, where it is possible to craft weapons and armour with better properties and a wider variety of weapons and armour. Maybe even make advanced metallurgy+mineralogy+mechanics a magical domain or something similar.
Also, some enchantments can be replaced by more sophisticated magic, while others would become obsolete by changing related mechanics.

Singleton

GameResources has to be initialized in the preInit loop. It has a lot of things that are accesed via get. Since only one possible instance of those things can be, why not use Singleton instead?
I could already do that but since some people has strong arguments against singleton I wanna ask before heading to that.

Chunks not move

The chunks are not moved to the coordinates were assigned.

Memory Leak in Dimension Updating

With the update to the rendering methods i found a heavy memory leak in the chunks unloading process, this leaves chunks loaded in RAM and VRAM causing OutOfMemory. The Dimension isn't unloading chunks far away from the generation limit. The error can be see in the next image. The chunks that are partially rendered are loaded in the HashMap but are far that the generation limit, so they are left loaded but can't be updated. EDIT: Priority HIGH, this bug affects every version after the 3D infinity world.

ss 2016-05-05 at 05 32 37

World fails to decorate chunks.

The world generator fails to decorate chunks if the draw distance is more that 2. The basic terrain will be generated but the decoration like trees will not generate.
Edit:
Disabled due to changes in the way that chunks loads.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.