Can you provide further info? Because as far as I know developers have to pay taxes and everything. So how easy would it be to incorporate bitcoins into tax payment in Great Britain?
I have no idea on how exactly things work there, but afaik devs even did have some problems to sort with taxation in late 2015
If I want to race an open wheel car, FBM@BL1 community is the only thing that I can jump in almost any time (sometimes even that combo gets empty all around the server browser).
I've been Demo for a long time, and I had a lot of friends there. And I can say that almost everyone I played a lot with, wanted to buy an S2 (back then), but had no possibility to do it. Some of them do not have credit card, some of them can not even dare to ask their parents, etc.
Ofcourse there is big part (I would say around 50%) of those who do not want to buy license, again, most of them just aren't ready to spend their money.
I don't get the idea on why would liced users would want that anyway. It won't add as much liced users to community, as it would wipe demo world. And also it would require a lot of work to implement all the limiting stuff. Also, once people have something for free, they will be raged if someone takes that from him, provoking even bigger pirate activity.
Another release candidate with bug fixes. From now on, database will be saved every minute if someone did new laps or new WRs were merged into it.
This time it is supplied with debugging symbols and no optimisations, so in case there is some bug, I can (probably) get meaningful reports from users.
With this version, LFSTop database does make distinction between clean and nonclean laptimes. Make sure to do complete backup of the whole lfstop folder before updating to this version!
What does it change for users?
Clean laps are treated basically the same as before. Nonclean laps do not cause chat notifications.
In the query window (!top, !tbs, !tb, !avg) you can switch between clean or all ("all" includes both clean and nonclean laps) laptimes. Currently your preference of clean/all display gets reset to "clean" every time you connect the server. Will be fixed at some point if I find that people need it.
What does it change for server administrators?
As far as I know, some people switched some hlvc off globally. Now you don't really want to do it blindly. The only thing that should be used generally is all-object_hit for custom layouts.
If you really need to save bandwidth so much, then you might also disable draft checks.
Linux admins, make sure you always have correct rights after you install the lfstop. (you need to be able to read everything and write into databases/*, Users.dat and WRs.dat). As always, don't run it with root permissions.
Changes:
2.0.0
+ Nonclean laps are saved to database now (!top, !tb, !tbs and !avg). Use a switcher at the bottom of the table to toggle between clean or nonclean. You can see nonclean laps have grey instead of white color. There are no notifications for nonclean laps - Print car name when user sets new laptime
TINY_VTE (Vote Expand), which cancels vote action (SMALL_VTA) but preserves all those votes casted (unlike the TINY_VTC, which cancels the vote completely), therefore we can increase the required votes percentage to any amount we want.
I am going to use it to filter laps to clean and non-clean categories in server stats.
By saying trivial, I meant just to send the packet whenever the drag gets to non-zero level. We could filter it up to 1..3% of the difference slipstream does to the car acceleration... There is also some need to exclude too short periods, like 10msecs or something like that.
Could we get slipstream value into IS_HLV::HLVC? It would let developers throw the burden of calculating the slipstream themselves (which we implement just by common sence, since there is no precise data on how it actually works in LFS). Also it would save quite a lot of bandwidth.
Scawen, you should add debug print to dcon which prints actual content of that spare byte in IS_ISI, in case some of old insim programs have some uninitiated garbage there instead of 0
It is not pointless one! If he ends up editing setup after his car was already on the track, he will abuse the restrictions we want to enforce, so we need that extra final JRR
Regarding the /ujoin, I think we could go the way we are... If the car is not ready (being in pits, changing settings) to join the track, from the insim you can tell it, and you can either ignore it (so he likely fails the start) or you can spectate him alltogether and alert him to join at the end of the grid.
EDIT:
I think, that making us able to see (from insim) if the car is joined being in pits (send IS_PLP), would be enough regarding the JRR stuff. So that if the car is not ready (being in pits, changing settings) to completely join the track, from the insim you can tell it, and you can either ignore it (so he likely fails the start) or you can spectate him alltogether and alert him to join at the end of the grid.
The symmetry with set/query packets is a good thing indeed. Currently I have to pack the command like ALL-XFG-UF1 if I want to set more cars than admin command packet can contain
So, yes, better to have both set and query packets.
I can bring here 2 other people who encountered this problem in some way. 1 car servers are used quite often in leagues. Wouldn't it be much more convenient to just configure server /cars and /track and start everything up neither than having to keep in mind how to deal with your tracker of choice?
Bitmap sounds flexible, although it will take atleast 32 bytes packet to suffice the whole possible range. With range based packet, you're enough with just 2 bytes. And, I guess, most of the time you still create and destroy buttons by some bunch amounts, which typically occupy consecutive ranges, so you could try to book keep them and use the range destroy packet.
Also, yet another request:
Can we have a packet enumerating allowed cars on the server? This will be really nice, because that way my app could automatically detect what car to show with !top command.
It was already annoying with Airio, when you came to some server and typed !top, seeing XFG top, while server has only BF1 enabled. There is workaround in Airio, but it requires server admin to take some actions (which they are lazy, or too busy to do), which ends up with lots of regular players experiencing this problem.
1.5.0 + Added quiet mode for events (!quiet to start, !notquiet to end) -- no chat spam and commands stop working for non-admins + Setup restrictions added -- can forbid traction control, automatic gears and can set the types of clutch control allowed + Updated translations. Thank you translators. - Renamed !quit to !shutdown - Now you need to strip '.example' part from config.ini.example and servers/srv1.ini.example when installing for first time. Updates are now easier, as you can just unpack everything to your installed lfstop folder and it's done. - Fixed warning being sent for wrong conditions
To make it clear, initially I thought that it would be possible to just send the IS_NPL and depending on response either put car on track or not. Then I saw we can't do it.
Also it will break compatibility with older insim programs -- say we run Airio and another program which does make use of this new feature.
So my current suggestion would be to have the new IS_RQJ packet being an exact full copy of the IS_NPL. This way old programs would just ignore RQJ and get only NPL, working as before.
In the IS_RQJ we need everything from the IS_NPL, in order to decide if we let driver join (need to check all the flags, game config, ... -- button clutch, restrictions, traction control, abs...)
I think you rather should not introduce whole new packet and use the IS_NPL. So we send IS_RQR in answer to IS_NPL.
Yet another request
Also, have you looked into other changes requests? https://www.lfs.net/forum/thread/88125 -- [RFC]TINY_AXM to request IS_AXM packets at any time -- this one will make LFSLazy splits prediction/comparison bar work on open config tracks.