Forums - Open Redstone Engineers
MCsim (pre-alpha release) - Printable Version

+- Forums - Open Redstone Engineers (https://forum.openredstone.org)
+-- Forum: Off-Topic (https://forum.openredstone.org/forum-4.html)
+--- Forum: Programming (https://forum.openredstone.org/forum-8.html)
+--- Thread: MCsim (pre-alpha release) (/thread-1606.html)

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20


RE: Redstone lab (Open source) - CX gamer - 12-09-2014

*Facepalms* that's a way better solution, I load in all libraries anyway, just did that. Still thoughwhen I try to create an instance with its constructor (UUID, String),

[Image: d2wYtr7.png]

it will still expect (String, String),

Code:
java.lang.NoSuchMethodError: com.mojang.authlib.GameProfile.<init>(Ljava/util/UUID;Ljava/lang/String;)V

exactly in the way reflection sees it. I think it may be some kind of security measure or something.


RE: Redstone lab (Open source) - Chibill - 12-12-2014

I see you fixed repeater rotation on github.


RE: Redstone lab (Open source) - CX gamer - 12-15-2014

Yeah, a pretty dumb mistake. Can apply to more than repeaters, but I only found a problem with them. There's 2 more deep issues I know of in the simulator. One occurs when going back in time after having placed blocks, placing a new block at the same time will delete some of the previous ones. Another one is my ChunkProvider not yet giving back a chunk based on BlockPos. I'm first fixing the latter as it may magically fix the former.

EDIT: Fixed both of them. Big Grin


RE: Redstone lab (Open source) - CX gamer - 12-18-2014

I finally fixed TileEntities for good, now the hopper clock works for example. Posted a video showing off the NBTviewer as well:

http://youtu.be/19a47ZsGCW8

EDIT: Currently trying to get entities working, but they check for things like canSpawnAnimals and canSpawnNPCs, which are in MinecraftServer. It's not obfuscated so I had to create a separate list of classes that don't deobfuscate. Then I tried loading it in with objenesis (just like the way WorldServer was created), but it didn't work flasslessly, don't yet know why. I'm also working towards a release, but also have exams coming.

EDIT2: Scrap MinecraftServer, I'll recreate something like updateEntityWithOptionalForce myself. Too bad I can't just call that, because it's overridden by WorldServer, which will check for animal/npc spawning, which fails. Pretty sweet now, dispensers and pressure plates work, but pistons and minecarts won't budge yet.


RE: Redstone lab (TileEntities) - LordDecapo - 12-20-2014

hey,,, If i load my CPU into this.. can it run the full 3D schem faster then the ingame 10ticks?


RE: Redstone lab (TileEntities) - CX gamer - 12-21-2014

Some blocks like pistons don't yet work, but I don't think your CPU has any of those. Most redstone components do work though. It will still take 10 ticks, but you get to decide how fast they go. The fast forward button is set to do about 100 ticks per second right now.

Please let me know if it works, I haven't tried a CPU yet. If you run into any problems, you can provide me the schematic and I'll try to figure out where it goes wrong.


RE: Redstone lab (TileEntities) - CX gamer - 12-24-2014

Oh just figured I didn't upload a .jar yet, so you can't try it out. >.<

Either way, entities are now being displayed:
https://www.youtube.com/watch?v=fie4LyhEVqk


RE: Redstone lab (Entities) - CX gamer - 12-26-2014

The method I'm using to go back in time is just to save every time to my own WorldState object which contains all block data and the lists with the objects of tileTicks, tileEntities and entities. Then I'd just revert it back to the needed frame. In hindsight that can't work, since I just keep the reference to the said objects, and MC can still modify those objects. Pretty stupid mistake that I realized way too late.

So now I'll just convert them to NBT and back. I was trying to avoid this since it's slower, but I don't have any other choice. So going back in time will be less seamless from now.

In other news, I had little bit of fun with benchmarking different kinds of clocks.


RE: Redstone lab (Entities) - CX gamer - 12-29-2014

Just did it like that, so going back in time loads a schematic completely instead of trying to replicate that state's conditions. There's a small problem yet where entities aren't saved properly as NBT, so they'll sometimes disappear. Example:

Code:
toString: EntityItem['item.tile.notGate'/1, l='Simulator', x=1,78, y=1,75, z=1,13]
NBT: {Motion:[0:0.131878... Age:0s,}
toString: EntityItem['item.tile.notGate'/2, l='Simulator', x=1,49, y=1,55, z=1,59]
NBT: {}



RE: Redstone lab (Entities) - tokumei - 12-31-2014

(12-09-2014, 06:09 PM)CX gamer Wrote: [Image: d2wYtr7.png]

Thank you for making me not the only one to use IDEA :3