#bitfighter IRC Log

Index Search ←Prev date Next dateβ†’

IRC Log for 2020-06-07

Timestamps are in GMT/BST.

06:20:02BFDiscordBridge<raptor> I am dismayed that I saw rotating speed zones in a contest map
06:20:25BFDiscordBridge<raptor> I thought that that "feature" was removed from the code long ago
06:21:10BFDiscordBridge<Footie 🐧> why remove it :(
06:26:42BFDiscordBridge<raptor> there are several experimental features that some devs played with, that weren't intended for larger audience - most were specifically for dungeon-like options
06:28:17BFDiscordBridge<Footie 🐧> aww
06:28:45BFDiscordBridge<Footie 🐧> it would be interesting if you could limit some of the more experimental features to a "dungeon" game type
06:28:56BFDiscordBridge<raptor> they were never cleaned up or integrated well into the code
07:21:49BFDiscordBridge<raptor> spawnlock
07:21:49BFDiscordBridge<raptor> https://cdn.discordapp.com/attachments/325743140059480065/719194406854590464/SPOILER_spawnlock.mp4
07:34:35BFDiscordBridge<Footie 🐧> yay!!!!
07:40:54BFDiscordBridge<Little_Apple> i love you
07:41:40BFDiscordBridge<raptor> These tiny improvements are fun to code
08:01:09BFDiscordBridge<Footie 🐧> is there a list of all the objects in bitfighter somewhere?
08:12:47BFDiscordBridge<raptor> you can look at the luadocs
08:13:04BFDiscordBridge<raptor> maybe start here: http://bitfighter.org/luadocs/class_bf_object.html
08:13:32BFDiscordBridge<Footie 🐧> thanks!
08:17:53BFDiscordBridge<amgine> Hey raptor can I ask a question its something that slighly annoys me and would be nice to have when playing back replays can we have a option to select which replay we want to watch instead of having to back out go back to host pick a replay and see if its the right one?
08:20:46BFDiscordBridge<amgine> aslo replays feels really out of place in the host menu maybe it should be moved back to the home menu
08:24:25BFDiscordBridge<Footie 🐧> "Just like the arcade game! Yo!"
08:24:26BFDiscordBridge<Footie 🐧> https://cdn.discordapp.com/attachments/325743140059480065/719210163307020298/20200607_112228.jpg
08:24:27BFDiscordBridge<Footie 🐧> i love these
08:25:59BFDiscordBridge<raptor> amgine, a menu option like that is a good idea - let me add it to my list and see if it can be easily done
08:26:46BFDiscordBridge<amgine> raptor also please dont remove experimental features they may have niche useses in map design better to have rotoating speed zones and not have them used then to need them and not have them.
08:27:52BFDiscordBridge<amgine> theres a argument to be had that as long as it doesnt flat out break or ruin the game theres no reason to remove features that could otherwise improve the game
08:35:05BFDiscordBridge<raptor> "All games become minecraft" <-- I think this is a basic law of game evolution and we have to fight hard against it and keep within some constraints/vision of what Bitfighter should be. It's why watusimoto and others didn't like how Bitfighter was becoming a sandbox-type game
08:54:35BFDiscordBridge<amgine> that isnt necissarily a bad thing games can still be sandbox games but keep the orginal conecpt in tact for example platform racing 2 was a early browser game in the 2006 that kept its 2 racing acepsct but had many features added to change of the racing elements (and even spawned some new game modes as a result) and did very well another more modern example is mario maker 2 players are still designing 2
08:54:35BFDiscordBridgeplatformer levels but the large vareity of content spawned new game modes and new concpets and ideas while keeping the core game play in tact
09:00:31BFDiscordBridge<raptor> I'm not really interested in discussion about this - I just like to code for fun - you guys in the community can debate these issues
09:01:00BFDiscordBridge<raptor> but I'd like to be faithful to what Bitfighter is and has been - whatever that may be
09:23:27BFDiscordBridge<raptor> @Footie 🐧 You have found the inner thoughts of the developers. Tread wisely, you may not like what you see... :)
09:24:30BFDiscordBridge<Footie 🐧> hehehe
09:40:44BFDiscordBridge<raptor> you guys want the same SpawnLock feature for flags, too, right?
09:41:00BFDiscordBridge<Footie 🐧> that would be nice!
09:42:05BFDiscordBridge<Footie 🐧> so each soccer ball goes back to wherever it was placed each time, right? no need to put down soccer ball spawns or anything
09:43:51BFDiscordBridge<raptor> If you so choose, you can enable 'SpawnLock' on the soccer ball, which means it returns back to its exact original position as placed in the editor
09:44:01BFDiscordBridge<raptor> always
09:44:20BFDiscordBridge<Footie 🐧> yay
09:44:29BFDiscordBridge<raptor> otherwise it'll jump around the various spawn points
09:45:00BFDiscordBridge<Footie 🐧> so the only way to set multiple spawn points is with multiple soccer balls
09:46:50BFDiscordBridge<raptor> no no
09:47:18BFDiscordBridge<raptor> the game works exactly as it did before, except now you can manually tell a specific soccer ball to only go back to where it started
09:47:40BFDiscordBridge<Footie 🐧> wait, there are soccer ball spawns?
09:47:45BFDiscordBridge<Footie 🐧> i think i'm missing something...
09:47:53BFDiscordBridge<raptor> you use a flag spawn
09:48:00BFDiscordBridge<Footie 🐧> oH
09:48:01BFDiscordBridge<raptor> kinda weird
09:48:03BFDiscordBridge<Footie 🐧> okay
09:57:41BFDiscordBridge<amgine> Why not give soccer spawn its own icon just wondering.
10:02:12BFDiscordBridge<raptor> because there's no such thing as a soccerspawn
10:04:53BFDiscordBridge<Little_Apple> its also pretty redundant and unnecessary to implement
10:16:54BFDiscordBridge<raptor> FlagItems are interesting - they have logic that prevents them from going to an already occupied spawn point
10:19:15BFDiscordBridge<raptor> I wonder why that isn't done with soccer balls, just an oversight, maybe?
10:38:52BFDiscordBridge<amgine> probably I cant think of any instance of wanting to have stcked soccerballs
10:48:39BFDiscordBridge<raptor> Adding the SpawnLock to flags may have weird consequences. Hope you guys are OK with that
11:03:39BFDiscordBridge<Footie 🐧> weird consequences are great
11:50:21BFLogBot Repo: bitfighter | Commit: ff8b1c45e1 | Author: raptor | Message: Add 'SpawnLock' attribute for soccer ball to always revert to starting spawn point
11:50:22BFLogBot Repo: bitfighter | Commit: 6f96633057 | Author: raptor | Message: Clean up statics in SoccerBallItem
11:50:24BFLogBot Repo: bitfighter | Commit: b521c0fdbe | Author: raptor | Message: SpawnLock for FlagItem. This also removes some old dead code that would try and load a time value from a FlagItem (which would crash the game)
12:40:42BFDiscordBridge<Skybax> That flag logic doesn't always work I think, possibly if you put multiple flag spawns on one spot
12:40:59BFDiscordBridge<Skybax> There was a contest map where the team flag and neutral flag had the ability to spawn on the same spot
12:41:02BFDiscordBridge<Skybax> Making instant scoring
12:41:47BFDiscordBridge<raptor> ah, probably because a neutral flagspawn was used
12:41:54BFDiscordBridge<raptor> teams and neutral flags can go to those
12:44:11BFDiscordBridge<Skybax> That makes sense
12:45:32BFDiscordBridge<raptor> at some point there are too many options and the interactions between the logic gets difficult to maintain
13:26:44BFLogBot Repo: bitfighter | Commit: 9a760e1cbe | Author: raptor | Message: Remove logprintf
13:26:45BFLogBot Repo: bitfighter | Commit: 9f59867c69 | Author: raptor | Message: Add option to jump directly to another recorded game from the playback UI
14:33:14BFDiscordBridge<amgine> @raptor is turbo boost storage a bug I noticed on tribes ( contest map) if you use a turbo boost ( the double tap active one) and touch a energy item if you hold space down you will continue to do a double tap turbo boost when you get enough energy for as long as you hold it
14:39:15BFDiscordBridge<amgine> Bug or feature?
14:39:15BFDiscordBridge<amgine> https://cdn.discordapp.com/attachments/325743140059480065/719304493245923430/holding_space_sotres_double_tap_turbo.bf019
14:51:27-tomaw- [Global Notice] We need to reroute a few of our servers so we can upgrade a hub. This'll be noisy, but should be fairly short. Further updates via WALLOPS (/mode $yournick +w to get them)
14:53:50Sadale Quit (*.net *.split)
14:54:10Sadale has joined
14:55:05BFDiscordBridge<raptor> amgine, yes to both!
14:55:37BFDiscordBridge<raptor> also, sharing the recording was an excellent way to give a bug report - I don't think anyone has thought to do that for me before...
14:57:52BFDiscordBridge Quit (*.net *.split)
14:58:10BFDiscordBridge has joined
15:38:04BFDiscordBridge<amgine> @raptor I double checked and its not energy item related apparently holding space after doing a double tap boost will cause the double tap boost to perissts as logn as you have enough energy and still havethe key held down
15:38:40BFDiscordBridge<amgine> soooo probably not a bug but interesting
15:38:53BFDiscordBridge<raptor> yeah that's how the mechanic works
15:39:16BFDiscordBridge<amgine> ok so not a bug then good to know
15:39:28BFDiscordBridge<amgine> it causes some ahem interesting mechanics if the maps have energy items then
15:39:29BFDiscordBridge<raptor> i think sam686 discovered infinite pulse-boosting in one of his zzzz... maps
15:40:34BFDiscordBridge<amgine> man you can get some insane speed though wonder if its possible to crash the game by sped cap ha ha
15:55:51BFLogBot Repo: bitfighter | Commit: 9d9fa49a78 | Author: raptor | Message: Fix bouncer desync'ing
15:56:07BFLogBot Comment on issue #614 | User: raptor | Comment: Fixed in 9d9fa49a78277c9f107045db1b04309d81eeb8c9 ... | https://github.com/bitfighter/bitfighter/issues/614#issuecomment-640292274
15:56:08BFLogBot Issue #614 closed by raptor | Title: Client-side prediction wrong with Bouncer | https://github.com/bitfighter/bitfighter/issues/614
15:57:23BFLogBot Comment on issue #614 | User: raptor | Comment: Fixed in 9d9fa49a78277c9f107045db1b04309d81eeb8c9 Hope this doesn't add too much network load. ... | https://github.com/bitfighter/bitfighter/issues/614#issuecomment-640292274
18:22:33BFDiscordBridge<raptor> I'm considering releasing 021 instead of 019h, that way I can make compatibility breaking changes like fixes to the scoreboard
18:22:34BFDiscordBridge<ChumpChange> Nice shooting @raptor! You just ranked up to level 19 !
18:39:59BFDiscordBridge<raptor> @πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ what do you need to know? Are you modifying one of the other games that used openTNL?
18:40:52BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> I'm part of game preservation project utilizing openTNL. I'm basically trying to emulate a server entirely from client's assembly code.
18:41:14BFDiscordBridge<raptor> which game?
18:41:15BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> Thankfully compiling your game and comparing makes it easier, but I'm still kind of not understanding byteBuffers and bitwise reading for strings.
18:41:31BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> there mostly game from "Sarbakan" which are all discontinued.
18:42:09BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> FireChild, Obscurara, SlimeBall, Avatar: Legends or the Arena, BigGreen Help.
18:42:50BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> I'm up to the point where I know the RPC Implementations, but having trouble understanding the differences between StringPtr and StringEntryTable data types.
18:43:23BFDiscordBridge<raptor> None of those seem old enough to have used openTNL. Are you sure they didn't use Torque2D?
18:43:26BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> I can see the client writeString() but I cannot read the same string back through my own GameServerConnection.
18:43:26BFDiscordBridge<ChumpChange> Nice shooting @πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ! You just ranked up to level 1 !
18:43:53BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> They are from 2006 and I can verify it uses openTNL (through the use of a VirTools plugin)
18:44:32BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> I'm not sure the differences, though one of their Debug Outputs does have the word "OpenTNL" in them.
18:44:34BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> https://cdn.discordapp.com/attachments/325743140059480065/719366226627002408/unknown.png
18:44:55BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> and I've manually labeled many functions that are very similar to openTNL library.
18:44:57BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> https://cdn.discordapp.com/attachments/325743140059480065/719366326501638165/unknown.png
18:45:17BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> https://cdn.discordapp.com/attachments/325743140059480065/719366405207621672/unknown.png
18:45:29BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> which makes me figure it is OpenTNL (variant ?)
18:46:26BFDiscordBridge<raptor> huh, yeah that looks legit
18:46:41BFDiscordBridge<raptor> much of TNL was reused in: https://github.com/GarageGames/Torque2D
18:48:22BFDiscordBridge<raptor> what kind of help are you looking for? I think openTNL is also still found on sourceforge
18:48:55BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> Well I have openTNL downloaded (1.5) and I'm using that as reference.
18:50:07BFDiscordBridge<raptor> OK, I think our version was forked a bit earlier than that
18:50:24BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> I'm trying to understand how TNL_IMPLEMENT_RPC works. And where does these variables go/used.
18:50:32BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> c TNL_IMPLEMENT_RPC(MasterServerInterface, c2mRejectArrangedConnection, (U32 requestId, ByteBufferPtr rejectData), (requestId, rejectData), NetClassGroupMasterMask, RPCGuaranteedOrdered, RPCDirClientToServer, 0) {}
18:50:52BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> In this case: ByteBufferPtr rejectData I cannot see it being used.
18:50:57BFDiscordBridge<raptor> oh yeah, that registers a method with the RPC protocol
18:51:27BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> Yes, the implementation/override calls this function
18:51:30BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> c req->initiator->m2cArrangedConnectionRejected(req->initiatorQueryId, rejectData);
18:51:53BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> As I follow this function.
18:52:02BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> It seems to just not use rejectData
18:52:53BFDiscordBridge<raptor> I'm reviewing the network code (been a while since I've added RPC calls)...
18:53:28BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> Thank you for taking the time to help with my questions.
18:55:26BFDiscordBridge<raptor> hmm, I'm looking at Bitfighter 'tnl' source subdir
18:56:26BFDiscordBridge<raptor> it wraps the parameters into a class called TNL::FunctorDecl
18:57:08BFDiscordBridge<raptor> which converts/wraps the data onto the bitstream
19:01:59BFDiscordBridge<raptor> ok after some headaches, I got the expansion: https://pastebin.com/MnafhZ2A
19:02:35BFDiscordBridge<raptor> that is an example RPC call with TNL_IMPLEMENT_RPC with 2 parameters 'newLevelIndex' and 'isRelative'
19:02:58BFDiscordBridge<raptor> you can more easily follow the 2nd param 'isRelative' in that code
19:03:05BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> wow this is great. Thank you.
19:03:18BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> Does argument's order matter?
19:03:28BFDiscordBridge<raptor> YES, oh my goodness, yes
19:03:48BFDiscordBridge<raptor> You can't beleive the hours I've wasted tracking bugs due to out-of-order stuff πŸ™‚
19:03:53BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> So how does the function know that the bitstream for that individual packet is fully consumed?
19:04:45BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> Also c2s means client sends this packet to server, (not server' handler function from client)
19:06:09BFDiscordBridge<raptor> yes
19:06:19BFDiscordBridge<raptor> want me to find an s2c variant?
19:09:36BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> No, let me digest this first (:P)
19:09:36BFDiscordBridge<ChumpChange> Nice shooting @πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ! You just ranked up to level 2 !
19:09:57BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> this is already a decent amount of work for me to analyze in an assembly level.
19:10:04BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> thanks
19:10:08BFDiscordBridge<raptor> sure
19:12:19BFDiscordBridge<raptor> one thing to remember is that c2s means that the method runs on the server, but is called from the client which wraps and sends those parameters
19:12:46BFDiscordBridge<raptor> and that's only if the developer didn't mess up the naming scheme πŸ™‚
19:36:50BFDiscordBridge<amgine> hey raptor I wanted to move the technical chat here so you know how you said pulse storage by holding down the double tap is intentional is it intentional tht storage persists between level so if you hold fire when the game ends you can turbo at the start of the next map ?
19:39:13BFDiscordBridge<amgine> actully curious if anything in bitfigher even uses python its all C+++ and LUA and what ever is used for networking and the site is PHP (pleadies) and something ( dont know what the main site uses)
19:39:32BFDiscordBridge<raptor> it might be, i don't know
19:41:13BFDiscordBridge<amgine> I actullly dont know what bitfighters network frame is based on
19:44:54BFDiscordBridge<raptor> openTNL
20:16:49BFDiscordBridge<Skybax> raptor, why go to 21 from 19
20:16:51BFDiscordBridge<Skybax> Where did 20 go
20:17:32BFDiscordBridge<raptor> we don't talk about 020
20:19:56BFDiscordBridge<Skybax> Is Bitfighter 20 like Windows 9?
20:23:07BFDiscordBridge<raptor> We spent 2 years (or more) trying to get 020 to work with too many changes. We finally decided to abandon it shortly after releasing 019f or g (can't remember). We devoted so much effort into something that became permanently broken. In fact, I think trying to do so much with 020 was what partly killed off watusimoto's and my enthusiasm for the project (other life things got in the way, too, of course).
20:25:07BFDiscordBridge<amgine> @raptor like what what happened what changes were discarded ?
20:25:23BFDiscordBridge<amgine> was it network changes code changes gameplay changes?
20:26:17BFDiscordBridge<raptor> But I'm obviously still here :)
20:26:42BFDiscordBridge<raptor> And I *love* the fact that you all keep this going with the discord and contests
21:20:12BFDiscordBridge<raptor> 020 changes included a complete graphics abstraction layer (preparation for GLES2), a refactor of the settings system, a new vector graphics library, refactor of the filesystem usage (PhysFS), and loads more. I don't even remember the new features we had planned.
21:20:48BFDiscordBridge<raptor> I just checked and we've been working on 020 since 2014!
21:44:57BFLogBot Repo: bitfighter | Commit: 473de07dfc | Author: eykamp | Message: Update bf.org ip address
21:44:59BFLogBot Repo: bitfighter | Commit: 23d3f5c57a | Author: raptor | Message: Big minor change: flip friendly fire on turrets
21:45:00BFLogBot Repo: bitfighter | Commit: bc30778826 | Author: raptor | Message: Merge remote-tracking branch 'origin/bitfighter-019x'
21:45:02BFLogBot Repo: bitfighter | Commit: 18969384be | Author: raptor | Message: 021 will be the next version. We must heal from the past...
21:54:57BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> raptor thanks for the insight
21:55:07BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> with this along with TNLAssert being available to easily find function names
21:55:55BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> i'm slowly on my way of reversing the entire library from the DLL
21:56:03BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> and hopefully it would be easier on my eyes to figure it out
21:56:04BFDiscordBridge<πŸ’œα΅–Κ°α΅ƒβ±αΆœα΅πŸ’œ> πŸ™‚
22:07:16BFDiscordBridge<Skybax> Bitfighter 020 sounds like Bitfighter The Sequel tbh
22:07:23BFDiscordBridge<Skybax> Whole new graphics system
22:07:25BFDiscordBridge<Skybax> Like damn
22:07:46BFDiscordBridge<Skybax> Do you think you'll ever revisit those kinds of things, but maybe in smaller quantities? lol
22:08:50BFDiscordBridge<raptor> you're welcome, phaicm
22:09:32BFDiscordBridge<raptor> 020 changes to the user were not really that apparent - almost all was engine changes
22:36:17BFDiscordBridge<raptor> what do you think - could someone conceivable die more than 255 times in one level?
22:39:35BFDiscordBridge<Footie 🐧> definitely

Index Search ←Prev date Next dateβ†’

These logs were automatically created by BFLogBot on irc.freenode.net.