Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - olive

Pages: 1 ... 5 6 [7] 8 9 10
91
Troubleshooting & Bug Reports / Re: The v1.22 beta bug report thread!
« on: October 29, 2013, 03:12:57 am »
Found a bug in GetInfo(22) when Voxel_Unload() is called during a program change. The program number indicated was wrong. Fixed.

92
Troubleshooting & Bug Reports / Re: The v1.22 beta bug report thread!
« on: October 29, 2013, 03:12:15 am »
The player-voxel interaction beqomes less precise under heavy load. Shift to avoid walking over the edge stops you at very different distances from the edge or sometimes not at all.

Yes, the physic engine must be improved to better handle very heavy load situations.

As we had tried to avoid this kind of scenario in the game, this wasn't an urgent problem.

But we had planed to improve it at some point because it could happens. So it will be improved in the future.

93
Troubleshooting & Bug Reports / Re: The v1.22 beta bug report thread!
« on: October 28, 2013, 07:30:45 pm »
V1.22b3 on Windows

GetPath(), GetInfo() and GetInfoName all just return -1 when called in Voxel_Load or Voxel_Unload where we really need them.

GetPath(0) return 3 instead of 4 as said in the release notes, but GetPath(4) returns the correct result.

Thanks a lot. That's fixed. New beta released now.

Code: [Select]
PickVoxel3D(0,0,0)Qrashes the BV qlient :>

Also fixed.

94
Troubleshooting & Bug Reports / Re: The v1.22 beta bug report thread!
« on: October 27, 2013, 02:17:39 am »
@Qon
We will test that. Maybe an "out of memory" issue. If so, that's already fixed with the next version.

95
Troubleshooting & Bug Reports / Re: The v1.22 beta bug report thread!
« on: October 27, 2013, 02:57:13 am »
The result from GetGameTime() seems to start over from 0 at an odd time. I've seem the value go as high as 1271305784 before starting from 0. But 1271305784 isn't even near max value for a 32 bit integer. And the value also seems to start very high.

If I did the math correctly there should take 49 days before the value would overflow in an unsigned 32 bit integer, half that if it's signed and only positive numbers are used. But I've seen it start over from 0 several times in one day.

Yep, that's not regular. Shouldn't have such values. So, there is a problem hiding somewhere.

With the last modification the values are now relative from the start of the game and saved when exiting. So, value shouldn't be so high.

Will look at that.

96
Suggestions / Re: Windows 64 bit or Large Address Aware
« on: October 26, 2013, 06:44:42 am »
Good news. Finally managed to activate the LAA mode. So it will be in the next beta  :)

The Blackvoxel Team

97
Suggestions / Re: Windows 64 bit or Large Address Aware
« on: October 25, 2013, 10:25:57 pm »
Could we please have a 64 bit windows exe, or at least a Large Address Aware Windows 32 bit exe. I would like to experiment with larger loaded world size.

That there is a 64 bit Ubuntu version doesn't help me since my machine running Ubuntu only has 2G of memory :(

That's in to-do list and we are convinced these are important features.

Unfortunately, it will require much more work than just activating some flags on the compiler. So, I'm not sure we will do that soon nor for the upcoming stable Release.

Some elements to understand :

We don't use Microsoft compiler for the Windows version.

Even the Windows version of Blackvoxel is built entirely... on Linux with a rather complex build system.

The GCC port we use for Windows don't support 64 bit mode. So will have to build, evaluate and validate a complete new toolchain for supporting 64 bits.

Already tried to activate large address aware on actual toolchain without success. It seems the compiler option isn't supported. But will have to try some trick we found and continue digging that way. Also, we must ensure it won't make some problem (It should not... but who knows).

That said, if you want that feature now, there are on the web some utilities that can force activation of LAA mode by simply modifying the .exe file to set the LAA flag.

The Blackvoxel Team

98
General Discussion / Re: Saving variables
« on: October 25, 2013, 03:03:15 am »
...
I'm still at a loss to why squirrel is used instead of lua. The trouble the author of squirrel had with lua garbage collection is long since fixed in lua.

Why we didn't choosed Lua ? The answer is simple : Because Lua does not have a C-like syntax.

Most languages used by programmers today are C-Syntax based: Php, Java, C#, C++, Javascript are C-Syntax based.

A video game can be a fantastic tool for learning programming. That's why we think the language used for Blackvoxel would have to be as close as possible to the syntax of real "useful" programming languages. We think that's an important choice.

We made the choice of Squirrel after hesitations with AngelScript. We choosed Squirrel for technical reasons. Finally, we also found that Squirrel is used for some big "AAA" games (and even if it wasn't the first criteria), that's finished to convince us.

Yes there are things that could be improved in Squirrel. But as far as we looked, that's true for all "integrables" languages we have found. They have all their own strength and weaknesses.

The Blackvoxel Team

99
General Discussion / Re: Saving variables
« on: October 25, 2013, 02:56:32 am »
Now it's possible to save variables between game save/load with the following code.

Code: [Select]
Len <- 1;
Dir <- 0;
Moves <- 0;

function Voxel_Load()
{
    try {
        dofile("save.nut");
        remove("save.nut");
    } catch(e) {}
}

function Voxel_Unload()
{
    local s;
    s = compilestring(format("::Moves<-%d;\n::Dir<-%d;\n::Len<-%d;\n",Moves,Dir,Len));
    writeclosuretofile("save.nut",s);
}

But there is not enough information available to the script to distinguish different robots apart or different universes.

I was thinking I could save the variables for a script in it's Voxel_Unload function. I need to have a way to separated several programmable robots that all run the same script apart. So I thought their x,y,z position should do. But those are not available in the Voxel_Load and Voxel_Unload.
I also need to separate the saved variables from different universes, but there is no way of knowing what universe we are in.
There should probably also be a way for a script to read it's program number. (In case you have copied or renamed it)

I also have trouble identifying if Voxel_Load was called because the robot was placed in the world, loaded, or had it's program changed. I really only want to load stored variables when the robot is loaded into the world, not when it is first placed, or had it's program changed.

All in all, it would probably be better if there was a specific blackvoxel function that handled the saving and loading of variables that a script could use.

Yep, we agree. That would be a good idea to provide a kind of serial number for the robot.  And something like getting a directory and path to save the files for a particular game.

100
General Discussion / Re: Saving variables
« on: October 25, 2013, 02:54:30 am »
Answer: You simply use GetQuantity(32768) to get the name of the save file before each save/load. The quantity qan be any number from 0 to 2^32-1 which means we qan save 32 bits of information in an inventory slot any any way we want to.

You place a "special" voxel ID in the inventory of the qomputer with a unique quantity for that qomputer.
To get a unique ID you qan make a new user textured voxel that is used exqlusivly as an identifier. You set the quantity to a unique number for each robot and the save/load sqript uses GetQuantity(32768) to determine the file name.

32768 is the id of user textured voxel 1.
Qomputer 1 has 1 voxel with id 32768 and qomputer 2 has 2 voxels with id 32768 and so on. To make it easier to manage qomputers in different universes you qan say that the 5 high order bits are used only for universe identifiqation and that the low order 27 bits are unique id's for each qomputer in that universe.
So the number of voxels stored in a qomputer should be
Code: [Select]
ID = (U << 27) | N //ID = U*pow(2,27) + Nwhere U is the universe number-1 you are in and N is a unique (in that world) identifying number that is at most 2^27-1 (more than you need, you qan have a qube of size 512x512x512 of just qomputers in each universe).
and you name each file ID.save or something.

Cool method, that's a clever idea  :)

101
Announcements / Re: Blackvoxel 1.22 Beta is out.
« on: October 24, 2013, 01:59:07 am »

Hi Enigma! :>
  • Added : New Egmy (Not yet activated).
  • Fixed : Programmable Robot : Redone some init/load/save code.
  • Fixed : Programming : Access to libraries (iolib...) wasn't working.
Error: Egmy not defined. Egmy was not found in diqtionary or acronym list.
What is an Egmy? :Q

What was fixed with init/load/save qode and in what way was access to libraries fixed for programming? There are no funqtions that deal with iolib that were exposed before or now. I'm qonfused.

Yep, Egmy isn't in dictionnary :o So they should add it  :P

The Squirrel iolib is a set of squirrel optional functionalities required to access files in programs.

This is part of what the Squirrel author named "Squirrel Standard Library".

So, to explain clearly what it's mean, in 1.22 you can write such kind of code for saving data into files.

Code: [Select]
local fh = file("test.txt","wb+");
fh.writen('N', 'b');
fh.close();


The Blackvoxel Team

102
Gallery / Re: Qons gallery
« on: October 23, 2013, 08:44:43 pm »
Made 5th iteration of the Menger sponge! It's 243^3 big
In the v1.22 beta of qourse...

To make even bigger fraqtals I need functions to retrieve the players qoordinate and view direction. I think the generation speed is enough to generate the fraqtals on-the-fly while flying :>
Took ~30 seconds or something to generate the 243^3 qube which is basiqally my view distance in all directions. If I limit the generation to what is in front of me at the moment and what recently entered the view distance then I'm sure it is possible. *working*

I'll have to fix some better texture for that~

Very nice !!!

For the player coordinates and view direction, you'll be happy... that's in the package  :)

You can get these infos with the var GetInfo(int InfoNum) function.

Depending on the InfoNum parameter, you'll get :

0: (int) Max for InfoNum parameter.
1: (float) Player Location (x)
2: (float) Player Location (y)
3: (float) Player Location (z)
4: (int) Player Location (x) in Voxel Units
5: (int) Player Location (y) in Voxel Units
6: (int) Player Location (z) in Voxel Units
7: (float) Player Viewing direction (yaw)
8: (float) Player Viewing direction (pitch)
9: (float) Player Viewing direction (roll)
11: (float) Player Head Location (x)
12: (float) Player Head Location (y)
13: (float) Player Head Location (z)
14: (int) Player Head Location (x) in Voxel Units
15: (int) Player Head Location (y) in Voxel Units
16: (int) Player Head Location (z) in Voxel Units

The Blackvoxel Team

103
Suggestions / Re: 3D terrain
« on: October 22, 2013, 12:40:04 am »
It would be nice with more aqtual 3D voxel terrain. Right now everything except for the (mesmerizing) trees is heightmap based. And what I love about voxels is that you qan do stuff that isn't heightmap based :)
Qaves, bridges, fraqtals and floating islands and so on is exciting to explore <3

We had this idea, but not yet the time to realize it.

The Blackvoxel Team

104
Troubleshooting & Bug Reports / Re: The v1.21 bug report thread
« on: October 22, 2013, 12:39:03 am »
http://www.blackvoxel.com/view.php?node=1476
Siliqon Wafer needs a blackrock blue to be made but the recipe in the manual doesn't mention it.

Yes and there was a bug in the code. As was mentioned above, the Blackrock Blue was also got in the output. Fixed in the code and the manual.  ;)

105
Troubleshooting & Bug Reports / Re: The v1.21 bug report thread
« on: October 22, 2013, 12:37:44 am »
Atomiq Qompressor has id 49 but the manual says 100!

Thanks. Fixed !  :P

Pages: 1 ... 5 6 [7] 8 9 10