• To improve security, we will soon start forcing password resets for any account that uses a weak password on the next login. If you have a weak password or a defunct email, please update it now to prevent future disruption.

0.9 is greater than 0.10

Palanto

Active Member
Game Developer
Oct 4, 2017
964
1,839
True, that's what we also said before, it would be better to have a single system in versioning. But since that won't happen, because some people are just too lazy to care, we just have to live with those ever changing system from creator to creator...


p.S.: In math 0.0000000009 != 0.9 (!= not equal in programming languages :p )
Those zeros can't be left out in that case, Only the 0's after the 9 could be left out. Everything before the 9 can't. Because 0.000000000009 is entirely different from 0.9, 0.9 would be written in that math case like: 0.9000000000
0.9000000000 == (is equal to) 0.9
But 0.0000000009 != 0.9000000000
 
  • Like
Reactions: skazy

skazy

Member
Dec 14, 2017
220
177
True, that's what we also said before, it would be better to have a single system in versioning. But since that won't happen, because some people are just too lazy to care, we just have to live with those ever changing system from creator to creator...


p.S.: In math 0.0000000009 != 0.9 (!= not equal in programming languages :p )
Those zeros can't be left out in that case, Only the 0's after the 9 could be left out. Everything before the 9 can't. Because 0.000000000009 is entirely different from 0.9, 0.9 would be written in that math case like: 0.9000000000
0.9000000000 == (is equal to) 0.9
But 0.0000000009 != 0.9000000000
(Y)
 

ANTagonist

Active Member
May 27, 2017
709
1,274
While I understand and know; I would wager that many also understand but the key fact is that people are using the system to number the update, not how complete the game is. Unfortunately a great many devs in the current market are not professional; instead of numbering the build in a way that reflects the state and iteration, they are using is as an update marker.
Though to be fair I have also seen devs go for the Alpha 0.1 and Beta 0.1 reflecting actual percentage complete.
 

Barioz

Active Member
Oct 9, 2017
903
1,536
okey. let's say you are right. wouldn't it be better if everybody represent their work same way, therefore there wouldn't be any misunderstanding, right?
when i see a game and want to try it, i see it says ver. 0.21 . now, does this game has 21 chapters and pretty long, or is it just a new game whic has 2 chapters and a patch.
if it was, like mentioned before, for example 0.2.1 for 2 chapters and 1 patch, or vanilla 0.21 for 21 chapters and no patch, or 0.21.1 for 21 chapters and a patch, wouldn't it be better to understand?
I completely agree with you. A consistent method of naming would be great. Meaning the first number after the dot telling the current version and every patch is mentioned with another dot and number (0.x.x).

But even then it can be really hard to tell how much content a game has from the version number, e.g. Man of the House is currently at 0.6.7, but every new version atm just goes up behind the 2nd dot (next will be 0.6.8). However, the content of the game is already pretty good and similar to games beyond a 0.10 version.

I personally would prefer something like in Dreams of Desire with an Episode in the title.
 

Cyan

Member
Jul 25, 2017
126
551
p.S.: In math 0.0000000009 != 0.9 (!= not equal in programming languages :p )
Those zeros can't be left out in that case, Only the 0's after the 9 could be left out. Everything before the 9 can't. Because 0.000000000009 is entirely different from 0.9, 0.9 would be written in that math case like: 0.9000000000
0.9000000000 == (is equal to) 0.9
But 0.0000000009 != 0.9000000000
Oh yea. Well...

1/3 = .33 repeating.
3/3 = .99 repeating.

Therefore,
.99 = 1

Laws of the Universe - 0
Me - 1

*Flex*
 
  • Like
Reactions: Palanto

skazy

Member
Dec 14, 2017
220
177
dude 0.99 repeating is 1 , it is true. but what is your point in saying that i don't get it
 

Cyan

Member
Jul 25, 2017
126
551
dude 0.99 repeating is 1 , it is true. but what is your point in saying that i don't get it
There's a bit of irony in you understanding the math, but not understanding the joke. ;)

Lol I'm aware it's true, the point is that it's counter intuitive; similarly to @Palanto Games' point - it's also true, but can be counter intuitive.

I suppose I should have made that more obvious? My bad
 
  • Like
Reactions: Palanto and skazy

skazy

Member
Dec 14, 2017
220
177
There's a bit of irony in you understanding the math, but not understanding the joke. ;)

Lol I'm aware it's true, the point is that it's counter intuitive; similarly to @Palanto Games' point - it's also true, but can be counter intuitive.

I suppose I should have made that more obvious? My bad
english isn't my native language so i don't get some "puns" or "jokes" or whatevers. i only know some academic stuff thats all.
 
  • Like
Reactions: Cyan

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Respected User
Donor
Jun 10, 2017
10,197
14,929
I think all of this would be cleared up easily if developers started updating their 'release notes' more. It's easy to see if a 0.21 is the 21st release of a game, or the 2nd with some updates.
I was ready to say that we need to stop using dot as separator, and so make the number version look less like decimal values... then failed to find what to use instead. 0'9 and 0"9 are size. 0-9 is a subtraction while 0*9 is a multiplication. 0|9 mean something, I don't remember what, in logical notation, 0:9 is a duration and 0°9 is an angle. 0&9 is a logical and, while 0^9 a modulo.
So I'll stand by your side, updating the release notes answer all the questions, while using the, too often forget, leading '0' in the revision part will remove the ambiguity.
 
  • Like
Reactions: skazy

Cyan

Member
Jul 25, 2017
126
551
0|9 mean something,I don't remember what, in logical notation
Inner product.

If you're familiar with crossproduct/dot product/vector math; it's very important for game developers (of the non-VN variety).

0&9 is a logical and, while 0^9 a modulo.
For me, & symbolizes a bitwise notation, where && would be the logical 'and'.

Modulo would be represented by a % symbol.

How much does it vary across different countries?

Edit - This has nothing to do with the thread topic, but it's still interesting to me lol
 
  • Like
Reactions: skazy

skazy

Member
Dec 14, 2017
220
177
Inner product.

If you're familiar with crossproduct/dot product/vector math; it's very important for game developers (of the non-VN variety).



For me, & symbolizes a bitwise notation, where && would be the logical 'and'.

Modulo would be represented by a % symbol.

How much does it vary across different countries?

Edit - This has nothing to do with the thread topic, but it's still interesting to me lol
as far as i know you are right about | and &&
we use .* as cross product in matlab (actually in matrices, to product all of its members respectively)
| means "or in bits" in pic programming, mplab, while || means "or in bytes"
&& means "and" in a lot of programming

bonus: * means convolution/cross product (as i said, as far as i knowi i might be wrong in some points, feel free to correct me)
 

anne O'nymous

I'm not grumpy, I'm just coded that way.
Modder
Respected User
Donor
Jun 10, 2017
10,197
14,929
For me, & symbolizes a bitwise notation, where && would be the logical 'and'.

Modulo would be represented by a % symbol.

How much does it vary across different countries?
It's more a programming language thing than a speaking language one. And reading your comment, I agree, both for & and the modulo symbol, but still stand on my own comment because it was the meaning when I first learn to code. I can't even remember which language it refer to, but still deep in my mind it's how it should be wrote.

We (coders) never been able to agree to a thing as important as operators, as operators... So, how can we agree on versioning ? :D
 

skazy

Member
Dec 14, 2017
220
177
you will have to, at some point, proffessional world requires global communications, right?
 

Cyan

Member
Jul 25, 2017
126
551
Honestly, I blame math teachers. They should have programming teachers explain math so that it's easier to follow down the road.

Thankfully... most programming languages use... mostly the same operators.... kinda.
 

redle

Active Member
Apr 12, 2017
572
944
While I think everyone would agree that things would work much easier if everyone used the same versioning notations and there was an obvious standard, this is no different than saying it would be much easier if there was only one single language spoken on the planet. It would be better if some people didn't use Metric while others use British Imperial as a standard unit set for measurements. It would be best if everyone just thought exactly as I did and never disagreed with anything I said or did.

Even when people agree on the idea of uniformity they frequently disagree on what shape that uniformity should take. When it comes to version numbers, the bottom line is that version numbers are not created/modified for the end consumer. Version numbers are for the benefit/use of the creators. The ONLY reason version numbers are released to consumers is so that when they report back to the creators to file a bug/ask for help/comment on the software in any way the creators can connect that report to a duplicate representation of the state of the software that the consumer is discussing. The fact that most software versioning does have some consistent trends (i.e. increasing in numeric value over time) and that consumers try to determine these trends and make use of them is done at the consumers own risk (of jumping to right or wrong conclusions).

Even if there were a universal standard for versioning (and honestly, in the professional coding realm it is fairly standard and consistent within a few degrees of freedom), that would only go so far in helping the problem mentioned here. The initial question was about versioning not making sense because 0.9 > 0.10. See, we do have a coding standard. And in the versioning portion of the coding standard 0.9 > 0.10 is a false statement. The problem is, even though it IS a standard, your average consumer does not know the standard. It is no different than the average person not knowing about how their refrigerator works or know how the replacement parts are numbered so that they can be found in the warehouse.

One can go online and search for standards on versioning and I'm sure find countless articles. I would be very surprised if it didn't become obvious fairly quickly into reading several of those articles that 0.9 is in fact considered an earlier release than 0.10.

Regardless of the presence or lack there of of a standard, the bigger issue in a community such as this is that most of these games are home-grown products. They aren't being made by a professional studio. They aren't necessarily being made by anyone with any programming knowledge/training/experience. Their only knowledge of versioning is that they see these numbers on other games and they create their own mental understanding of what the numbers mean. How close their assumptions are to actual standards varies greatly. Even those who do come pretty close to an accurate understanding often think that it should be different or that they can "improve" the way it is done. They do this without any research into understanding the reasons of why it is done the way it is done (and therefore fall into the same pitfalls and dead-ends that have been stumbled upon countless times by others in the past).

Standard or not, "home" creators will continue to reinvent the wheel over and over. They don't know there is a standard and they don't see why it matters. They do what works for them. And consumers will continue to misinterpret the standards and read more into what they see than is being claimed.

The main takeaway, as far as the initial comparison of 0.9 and 0.10, is that, even though it is generally referred to as a "version number," it is not, in fact, a single number. Whether "the number" is 1.5, 0.2.6.8, 1200.498.33, or A3G779XJ, it is simply an identification mark. Most of these software identification marks do use numeric numbers and dots (as it makes it easier to make automated code for tracking and organization purposes). Even when they do, they are a list of separate integer numbers, not a single decimal/floating-point number.

It is not, is nine-tenths greater than or less than one-tenth or ten-hundreths. It is, zero compared to zero and nine compared to ten. There is no fractions, no decimals anywhere in a version number.
 

Scales

Member
Nov 27, 2017
114
132
If I ever made a game, I would version number it as:
0.1
0.1.1
0.1.1a
0.1.1a.1
0.1.1a.1.2
0.1.1a.1.2v2
Final

Just to mock the development cycles that seem to get smaller and smaller with every iteration.

Now while I understand that this is rarely the case, it is not unreasonable for a person to see "0.8" and assume the thing is 80% of the way to being considered a standalone complete-able game. But its annoying when it hits 0.10, because you don't know if that's them saying "I need just a bit more time because I miscalculated" or "Oh, there are 90 more versions before we are finished!"

And then 4 years down the road, 0.99 becomes 0.100.....
 

skazy

Member
Dec 14, 2017
220
177
Wow man you wrote a lot .Thanks for your time it was more than helpful
 

greyelf

Well-Known Member
Nov 16, 2016
1,076
789
The first common mistake many people make is that they assume that a version number is an actual number when in fact it is just a structured identifier. The second mistake they make is that they assume that there is only one standard format for that structured identifier to be, where in fact there are many different formats commonly in use.

In reality the format of structured identifier only really needs to have meaning to the developer(s) using it, although it is very helpful if it can also be understood by the end-users as well, and when that structured identifier is included as part of a file name it is also helpful if it allows the different versions of the identified files to appear in a understandable order when sorted.

While it would be very helpful to all involved if a very limited (only one?) number of formats where used by all independent game developers, it is hardly surprising that this isn't the case when we can't even get professional software developers to do that. lol
 

dirtyscrote

Newbie
Jun 14, 2017
22
49
With regards to why you count number of digits not position to the dot, the smart ass computer science answer is binary, or more specifically you cant assume all numbers are base10 i.e. decimal.

For example:
Zero in 8bit binary is 0x00000000 can also be expressed as 0
One in 8 bit binary is 0x00000001 can also be expressed as 1
Two in 8 bit binary is 0x00000010 can also be expressed as 10 (hence the crap joke of "There are 10 sorts of people in the world, those who understand binary, and those who don't")
One hundred and twenty eight is 0x10000000 can also be expressed as 10000000

Unfortunately (;)) for people, versioning software was started by people who are familiar to thinking in number systems other than decimal so counting the number of digits was a second nature to them and it stuck
 

Dasanko

Newbie
Nov 24, 2016
18
56
so guys, i see a lot of developers like to develop their games in time. most likely they won't publish the game when it is done, instead they publish it before complete and monthly basis. and they say "this is version 0.9" then next month they say "this is version 0.10" but the thing is 0.9>0.10 so it makes no sense, right?
so generaly this is not a big problem. but when i look for some good games to play, i find EXAMPLE [0.16] . and i have that game on my computer but its name is EXAMPLE [0.8] so, is it a new version or an old one?
or, for example, there is a game that i have never seen, and its name is EXAMPLE [0.21] . is it a newer game or an older one?
i think there sould be a universal coding for this, to prevent the misunderstanding.
 
  • Like
Reactions: Palanto