Forums
April 19, 2024, 05:53 AM

Author Topic: HostingBuddy updated  (Read 7760 times)

0 Members and 1 Guest are viewing this topic.

Offline CyberShadow

  • W:A maintainer
  • Full Member
  • *****

  • Moldova Moldova
  • Posts: 173
    • View Profile
    • Homepage
Re: HostingBuddy updated
« Reply #30 on: July 30, 2015, 07:23 PM »
OK, I set objects to 100%. Complexity is fixed at 100% (as in W:A before v3.6.31.0) and not configurable (not sure we need this unless we want to lower map complexity for some schemes, BnG maybe?).

We had a discussion about it months ago where you said you could maybe could give us a kind of skeleton with less functionality for us to work on it.
One of the thing is missing and that "we (the community)" could implement is a better IA for having league game chat about rules during the game. (I have other ideas as well such as auto reporting to TUS (even if you don't have a replay)/ auto creating a complaint/streaming..)
An API could be really nice but I fear it will miss the ability to actually add modules to HB. Having public endpoint to HB and allowing us to "host" our own HB with our customized module could be beneficial for the open source community.
Let's say I would like someone to be able to interact / read the chat in real time through HB. I am sure it might requires ton of work but I might be willing to do this work. However an API would not allow me to do that. Nevertheless, if I had a basic skeleton I might be willing to loose some core functionality of HB in order to be able to do that.
Honestly, right now I am too busy to do anything related to WA but last time I spoke with some other dev from worms, some of them were very interested as well.

In-game chat is tricky and HB can't do it at the moment. The problem is that the in-game message length (for any in-game action, not just chat) is implicit, which means that HB would need to understand and know how to decode ALL of the in-game network packets.

Generally, a realtime API is not an obstacle, e.g. one way to do that is over IRC.

The more I think about it, the less I am convinced that I should be releasing HB code. I've presented one argument, here are some more:

2 - Just yesterday, Deadcode and I discovered that HB was doing something wrong on the protocol side with regards to maps with many colors and the hole count. Generally speaking, when protocol incompatibilities arise, fixing such protocol issues is much easier in HB, because the fix can be deployed instantly and we don't have to worry about preserving compatibility with older versions of HB. This changes if we no longer have control over all instances of HB's codebase on WormNET or elsewhere, and game updates need to mind compatibility with these older versions.

3 - Where will the bot be hosted? You will need a hoster that supports running native programs and does not block IRC ports.

I've seen people try to bring their bots to WormNET, but none of them have been around for more than a year. The person just got bored of the game and tired of maintaining the bot. The only bots that have been around for longer are Team17's (ChanServ), Byte's (FullWormage) and mine.

I used to offer hosting for Worms projects, but these days I'm hesitant as people have abused this in the past (use the free hosting I provided them to attack other servers on the Internet, host copyrighted files, or host programs containing my code used in a way I asked them not to).

4 - HostingBuddy is written in the D programming language, a language I'm sure not many of you are familiar with.

So, it's not completely off the table, but I think I'd like to see a display of good faith, long-standing activity in the community, and familiarity with D or generally programming proficiency, at which point you might as well apply to be an alpha tester (which gets you HB source code access). Otherwise, I've suggested some alternatives.

One thing I'd like to add is a reminder that HostingBuddy and related technologies are all just a stepping stone until we can integrate them all into the game itself. So although things like HB scheme settings may make their way as the defaults for 4.0 or whatever the respective version will be, many other aspects will be obsolete, so we shouldn't spend a disproportional amount of effort on such things.
« Last Edit: July 30, 2015, 07:30 PM by CyberShadow »

Offline Korydex

Re: HostingBuddy updated
« Reply #31 on: July 30, 2015, 08:08 PM »
OK, I set objects to 100%. Complexity is fixed at 100% (as in W:A before v3.6.31.0) and not configurable (not sure we need this unless we want to lower map complexity for some schemes, BnG maybe?).
Nop, I think it's impo to generate a good BnG map in HB.
https://www.tus-wa.com/forums/worms-armageddon/standard-scheme-variants-(part-1-competitive-ground-schemes)-25170/msg205369/#msg205369
Quote
Maps

Edited random maps (double layer cavern preset with just the top removed to make it into a full width island map; example).
*Ideally, terrain objects are reseeded until there's at least 3 usable hides on each half of the map.
*Unless agreed on beforehand, avoid terrain textures with extremely jagged grass such as -Farm, Jungle, Medieval, Sports and Tribal.

So I guess the best solution is using WMDB BnGs.

Re: HostingBuddy updated
« Reply #32 on: July 30, 2015, 08:14 PM »
I was once thinking of making a sort of extended WebSnoop website with TUS authentification and using HB ability to host game and report them to TUS but also help during the game (with real time interaction as a bot or with a TUS mod) and allow someone through socket to speak with their friend that are playing through HB. It would also be able to have an extended version of existing snooper showing the status (in game, out game) if you are playing through HB.
It would also allow private channel for clan and would be seamlessly integrated with the general channel such as you wouldn't see the difference between AG and a private channel you would have made for your clan/group.
The idea on the paper seems good in my opinion. However, you did bring good point and I do not have the time to do it anyways. Until WA 4.0 it can wait I am sure.

Offline CyberShadow

  • W:A maintainer
  • Full Member
  • *****

  • Moldova Moldova
  • Posts: 173
    • View Profile
    • Homepage
Re: HostingBuddy updated
« Reply #33 on: July 30, 2015, 08:41 PM »
HostingBuddy is currently in a crash loop since 20:05 UTC, I'm investigating

Edit: Fixed.
« Last Edit: July 30, 2015, 09:01 PM by CyberShadow »

Offline j0e

  • Sr. Member
  • ****

  • Canada Canada
  • Posts: 445
    • View Profile
Re: HostingBuddy updated
« Reply #34 on: July 31, 2015, 03:03 AM »
These are now live.
Forgot to mention that the background fix for http://wmdb.org/16374 etc. is now live too, please give it a go.
Going to look into fixing preprocessing http://wmdb.org/15338 as well as why http://wmdb.org/24528 doesn't work at all.
Done
Sorry for the slow response – was at work all day. You’ve been busy! After some testing, all the maps you posted load. Maps with more than 65 colors after palette reshuffling now have normal background soil, as long as they don’t have automatically placed holes. This is a definite improvement. However if holes are added to maps with more than ~91 colors using the !holes command, they will have white background. I gather that the automatic holes need certain dedicated colors in the palette, requiring more colors to display properly. Here are the complete results of my tests:

Maps 16374, 15338, and 6247, all have >112 colors (after palette reshuffling) and either pre-placed holes or no holes. All of them now work great – unless automatically placed holes are added.

Map 13192 has only 65 colors and looks fine with any number of holes added. The new forced scheme border setting is working great! The map setting of Snow background also successfully overrode the new Beach default as planned.

Map 11155 (91 colors after reshuffle) does not have holes by default and looks fine with automatic holes added; only the background islands (from pressing Insert) have color problems.

Map 24528 (97 colors) has automatically placed holes by default and has white soil.

So it appears that if the palette can be reliably shrunk to <~91 colors, white soil will be a thing of the past. And if it can somehow produce maps with 65 or fewer colors reliably, there’ll be no visual errors at all. It is very nice to have the color counter now. Even if the palette shrinker can’t be improved, there will be no more paranoid guessing about which maps will work or not. If the palette shrinker can’t be improved though, you might consider adding an explicit warning about white soil in the green map info text.

Fantastic work! Thanks again.. I hope this was at least a bit useful.  :)

Online MonkeyIsland

Re: HostingBuddy updated
« Reply #35 on: July 31, 2015, 04:47 AM »
Hi! I don't really use hostingbuddy, so i don't know if this feature is already added or not, but I think that it would be cool to load at least tus league schemes and maybe the onl scheme by name and not by number. I mean something like this: if somebody hosts a shopper for examle and types the command !tusscheme then the tus shopper scheme would be loaded. What do you think about this?
I'm not against the idea, but it would require cooperation from the respective websites' admins.

What do you need to be done regarding that?
Due to massive misunderstandings: MonkeyIsland refers to an island not a monkey. I would be a monkey, if my name was IslandMonkey meaning a monkey who is or lives on an island. MonkeyIsland is an island which is related to monkeys. Also there's been a legend around saying MonkeyIsland is a game. So please, think of me as an island or a game.

Offline CyberShadow

  • W:A maintainer
  • Full Member
  • *****

  • Moldova Moldova
  • Posts: 173
    • View Profile
    • Homepage
Re: HostingBuddy updated
« Reply #36 on: July 31, 2015, 10:03 AM »
Well, that would depend on what features are to be added. For example, for a !tusmap command or such, there needs to be an API endpoint which takes the parameters to !tusmap and returns a PNG map. If TUS maps are classified by scheme, we can add implicit mapping depending on the scheme used to host the game. If the request supports Last-Modified and If-Modified-Since headers, then HB can cache the result too.
« Last Edit: July 31, 2015, 10:09 AM by CyberShadow »

Offline Senator

Re: HostingBuddy updated
« Reply #37 on: July 31, 2015, 11:20 AM »
Or just download the current scheme files from tus/onl and upload them to your server. Most league schemes haven't changed for years. The same for maps (tus -> wmdb). Actually I could upload some popular maps that are missing from wmdb.

Offline Tomi

Re: HostingBuddy updated
« Reply #38 on: July 31, 2015, 11:38 AM »
Btw i talked about !tuscheme command, because it seems to me like a 10 minutes job. I was thinking about the way senator said (static way), but if MI would be up for making a little service to retrieve the current league wsc file of a scheme that would be just awesome.

!tusmaps would be also vn feature.

Online MonkeyIsland

Re: HostingBuddy updated
« Reply #39 on: July 31, 2015, 01:24 PM »
Well, that would depend on what features are to be added. For example, for a !tusmap command or such, there needs to be an API endpoint which takes the parameters to !tusmap and returns a PNG map. If TUS maps are classified by scheme, we can add implicit mapping depending on the scheme used to host the game. If the request supports Last-Modified and If-Modified-Since headers, then HB can cache the result too.

Isn't it better for TUS to return downloadable content like application/octet-stream? Because some maps are BIT and can't be send as PNG map. (They could, but TUS had to convert them first which would be redundant since HB should get the BIT to load)

Moreover, how does HB send the request to TUS? I mean are there any preferable methods? (simple GET? or POST?)
Due to massive misunderstandings: MonkeyIsland refers to an island not a monkey. I would be a monkey, if my name was IslandMonkey meaning a monkey who is or lives on an island. MonkeyIsland is an island which is related to monkeys. Also there's been a legend around saying MonkeyIsland is a game. So please, think of me as an island or a game.

Offline CyberShadow

  • W:A maintainer
  • Full Member
  • *****

  • Moldova Moldova
  • Posts: 173
    • View Profile
    • Homepage
Re: HostingBuddy updated
« Reply #40 on: July 31, 2015, 01:52 PM »
Isn't it better for TUS to return downloadable content like application/octet-stream? Because some maps are BIT and can't be send as PNG map. (They could, but TUS had to convert them first which would be redundant since HB should get the BIT to load)
Err, yes, PNG for color maps and BIT for monochrome ones. I was still thinking of it from WMDB's perspective, which only supports PNG. Content type doesn't really matter.

Moreover, how does HB send the request to TUS? I mean are there any preferable methods? (simple GET? or POST?)
It doesn't really matter, but if it makes things easier, the way HostingBuddy currently integrates with WMDB is: for getting specific maps (known number), it requests http://wmdb.org/maps/{number}-download, and for selecting a random map it requests http://wmdb.org/random_map_for/{scheme}, which returns an HTTP redirect to a link in the former format.

Offline SPW

Re: HostingBuddy updated
« Reply #41 on: July 31, 2015, 02:40 PM »
I really like how this thread is going. Big thanks to CyberShadow and all the others. Thats how we should talk in a forum.

Keep it.  :)

Online MonkeyIsland

Re: HostingBuddy updated
« Reply #42 on: July 31, 2015, 06:43 PM »
It doesn't really matter, but if it makes things easier, the way HostingBuddy currently integrates with WMDB is: for getting specific maps (known number), it requests http://wmdb.org/maps/{number}-download, and for selecting a random map it requests http://wmdb.org/random_map_for/{scheme}, which returns an HTTP redirect to a link in the former format.

Just a thought, is it possible to pass the command to TUS server entirely? For example if the command starts with !tusmap, HB would send the command to TUS server and expect a map response from TUS? That would make it extremely easy on your side. You just send a command to TUS's server and wait for a response/map. That way you wouldn't have to worry about a map ID or is it random whatsoever. TUS server would handle that. Do you see any flaws with this idea?
Due to massive misunderstandings: MonkeyIsland refers to an island not a monkey. I would be a monkey, if my name was IslandMonkey meaning a monkey who is or lives on an island. MonkeyIsland is an island which is related to monkeys. Also there's been a legend around saying MonkeyIsland is a game. So please, think of me as an island or a game.

Offline CyberShadow

  • W:A maintainer
  • Full Member
  • *****

  • Moldova Moldova
  • Posts: 173
    • View Profile
    • Homepage
Re: HostingBuddy updated
« Reply #43 on: July 31, 2015, 11:13 PM »
No, that sounds good. Caching can still be done by redirecting to a cacheable URL. We'll need to decide how to send error messages for invalid !tusmap parameters. Maybe a text/plain content type?

We'll also have to think about what to put in "!help !tusmap" - maybe translate that to "!tusmap help".
« Last Edit: July 31, 2015, 11:20 PM by CyberShadow »

Offline MeTonaTOR

Re: HostingBuddy updated
« Reply #44 on: August 01, 2015, 10:28 AM »
Code: [Select]
HostingBuddy: v3.6.31.0
`UC`Zexorz`DOS`: v3.7.2.1

Why still 3.6.31.0 :(
<Asbest> alright im too sleepy, i seen too many idiots today. i hope no one will get what i got. have a good night
* Asbest (~Asbest@5b606b87.bfe48da6.6c2d5d00.IP4) Quit (Quit)
<StepS> party
<OutofOrder> ♫♪♫♪ \o/ _o/ \o\  /o/ ♫♪♪♫
<Bamboy> ༼ つ ◕_◕ ༽つ
<StepS> (≧▽≦)
<Bamboy> ᕙ(⇀‸↼‶)ᕗ
<WTF-8> ( . )   ( . )