Cuberite Forum
Questions on testing and exporting - Printable Version

+- Cuberite Forum (https://forum.cuberite.org)
+-- Forum: Cuberite (https://forum.cuberite.org/forum-4.html)
+--- Forum: Development (https://forum.cuberite.org/forum-13.html)
+--- Thread: Questions on testing and exporting (/thread-1364.html)



Questions on testing and exporting - Narroo - 02-11-2014

I think I may have made a good change to some of the code, yay!

One problem; I'm having trouble figuring out how to test it. I fixed: "unload" console command should use cWorld:QueueUnloadUnusedChunks() #385.

Now, I'm not sure how to test it. I'm still not even close to understanding how the code fits together, and I'm new to projects like this, so I'm not sure how I should go about figuring out how to test it.

Then, once I do test it: How do I properly export this back to the cmake file so I can do a pull-request?

Thanks!


RE: Questions on testing and exporting - xoft - 02-11-2014

As for testing, each case is unique. Usually you just want to run the server, log in with minecraft and derp around for a while to see if anything got broken. In this particular case you want to spam the server console with "save-all" and "unload" commands and see if the server deadlocks and if it is correctly unloading chunks.

If you haven't added or removed any source files, there's no need to touch cmake at all. Just use your git client to push the changes back into your fork of the repository (you did fork in the beginning, right?), then go to GitHub website and it will give you the necessary buttons to create the PR.


RE: Questions on testing and exporting - Narroo - 02-11-2014

The two things are:

1: I can't get VS to debug the thing. I keep getting an error: Unable to start program"..Debug/ALL_BUILD" cannot find file.

2: I'm not sure I changed anything that will have an easily detectable effect. In particular, I'm not sure what I'm doing the Lua API and I'm unsure if I changed all the correct function calls. If I didn't the program should just run as it did before. The only function call I changed was in "tolua_AllToLua_cWorld_UnloadUnusedChunks00(lua_State* tolua_S)" and I don't know whether or not this is the only explicit function call to UnloadUnusedChunks. I THINK that when the Lua side of things tries to call UUC, it gets filtered through that function, but I don't know if there are explicit function calls in the Lua code that doesn't appear in the ALL_BUILD project. (That would be the plugins, yes?)

QUICK EDIT: Okay, you see, this is getting weird now. I can still get a debug exe to compile. Last time I tried it I only had like 5 commands available and they didn't save-all or unload (else I would have tried it). Now that I've been fiddling around and have recompiled it...a few times...they're popping up in the debug exe. My head.
Anyways, I think I answered Question 2 now, since I put a LOGINFO line in there to say whats it's doing...it's supposed to run once every 10 seconds, right?...That was somewhere in the documentation. should probably remove that message. And stop spam posting~ Sad


RE: Questions on testing and exporting - xoft - 02-11-2014

1. You need to set the proper startup project for the solution - rightclick on the MCServer project and select "Set as startup project":
[Image: vs2013_set_as_startup_project.png]

2. If you've changed anything in the $/src/Bindings/Bindings.cpp file, then your changes are lost, that file is auto-generated from the headers by ToLua++, the program that creates Lua bindings for C++ code.

As for those console commands - most of them are implemented in the Core plugin, which is in a Git Submodule. So if you don't do "git submodule init" and "git submodule update", then you won't have the plugin and thus no commands (but then MCS shouldn't compile either, since the PolarSSL library is in a submodule, too)


RE: Questions on testing and exporting - Narroo - 02-12-2014

Ah, okay. I though I had to change where the computer searched for ALL_BUILD.