Heroscapers
Go Back   Heroscapers > Custom HeroScape Creations > Software
Software Software created for enhancing HeroScape


Reply
 
Thread Tools Search this Thread Display Modes
  #37  
Old May 28th, 2014, 03:53 AM
Lyrgard's Avatar
Lyrgard Lyrgard is offline
 
Join Date: October 1, 2009
Location: France - Bordeaux
Posts: 1,056
Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla
Re: HexScape

Thanks a lot for the tips, Xorlof.
I'll try to make a DIY light tent, and the lego can provide a turntable and camera mount. I'll see how it goes !

I'll gladly use your zombie model, too. I you still have photo shoot of others picture that you didn't turn into 3d model yet, will you be willing to share them too ?

what follows is an answer to Xorlof speaking of HTTP and Websocket and is quite technical and probably boring for not tech-savy people
Spoiler Alert!
Reply With Quote
  #38  
Old May 28th, 2014, 10:55 AM
caps's Avatar
caps caps is offline
My six-year-old sister-in-law calls the shots
 
Join Date: October 6, 2010
Location: USA - CO - Denver area
Posts: 16,681
Images: 352
caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth
Re: HexScape

Way cool that you're doing this Lyrgard. Wish I could +rep you. I'm also glad to see you're keeping the implementation separate from the interface.

Formerly known as capsocrates
--
Remixed Master Sets - challenge yourself with new terrain combinations!
--
Colorado Fall 2023 Multiplayer Madness
--
caps's Customs Redux - caps's multiplayer maps - caps's maps - Seagate

--
Continuing Classic Heroscape: C3V SoV
Reply With Quote
  #39  
Old May 28th, 2014, 11:08 AM
Porkins's Avatar
Porkins Porkins is offline
guy who got blown up over Yavin, The
 
Join Date: February 24, 2009
Location: CA - East Bay Area
Posts: 12,550
Images: 99
Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth
Re: HexScape

An Android version would be soooo sweet!
Reply With Quote
  #40  
Old May 28th, 2014, 01:50 PM
caps's Avatar
caps caps is offline
My six-year-old sister-in-law calls the shots
 
Join Date: October 6, 2010
Location: USA - CO - Denver area
Posts: 16,681
Images: 352
caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth
Re: HexScape

Quote:
Originally Posted by Porkins View Post
An Android version would be soooo sweet!
Yes.

--

Spoiler Alert!

Formerly known as capsocrates
--
Remixed Master Sets - challenge yourself with new terrain combinations!
--
Colorado Fall 2023 Multiplayer Madness
--
caps's Customs Redux - caps's multiplayer maps - caps's maps - Seagate

--
Continuing Classic Heroscape: C3V SoV
Reply With Quote
  #41  
Old May 28th, 2014, 02:15 PM
Porkins's Avatar
Porkins Porkins is offline
guy who got blown up over Yavin, The
 
Join Date: February 24, 2009
Location: CA - East Bay Area
Posts: 12,550
Images: 99
Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth Porkins is a man of the cloth
Re: HexScape

Cool article caps. That game is the source of my screen name. I played that game when I was an adult with random strangers.
Reply With Quote
  #42  
Old May 29th, 2014, 06:11 AM
Lyrgard's Avatar
Lyrgard Lyrgard is offline
 
Join Date: October 1, 2009
Location: France - Bordeaux
Posts: 1,056
Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla
Re: HexScape

Interesting article, caps ! I already intended to use a mix of UDP and TCP, depending of the importance of the packet, and this article give valuable insight on this point.

As for an android version, it'll probably be hard to make one for the small screen of smartphones. For tablet, though, it'll be perfect. Only need to add support for touch input instead of mouse, but shouldn't be too hard.
Reply With Quote
  #43  
Old May 29th, 2014, 09:57 AM
caps's Avatar
caps caps is offline
My six-year-old sister-in-law calls the shots
 
Join Date: October 6, 2010
Location: USA - CO - Denver area
Posts: 16,681
Images: 352
caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth
Re: HexScape

Quote:
Originally Posted by Lyrgard View Post
As for an android version, it'll probably be hard to make one for the small screen of smartphones. For tablet, though, it'll be perfect. Only need to add support for touch input instead of mouse, but shouldn't be too hard.
I bet you could come up with something. There would be inconveniences and limitations for the user, probably, but maybe not.

Formerly known as capsocrates
--
Remixed Master Sets - challenge yourself with new terrain combinations!
--
Colorado Fall 2023 Multiplayer Madness
--
caps's Customs Redux - caps's multiplayer maps - caps's maps - Seagate

--
Continuing Classic Heroscape: C3V SoV
Reply With Quote
  #44  
Old May 29th, 2014, 10:21 AM
Xorlof's Avatar
Xorlof Xorlof is offline
Super Smurfy
 
Join Date: February 22, 2011
Location: WI - Stevens Point
Posts: 3,116
Images: 17
Blog Entries: 5
Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer
Re: HexScape

Interesting read, caps. I've always have enjoyed reading game development postmortems.

I've done a decent share of hobby game programming. You'll find my name in spots on various roguelikes, I've done some "fun" game projects, and most-directly-related to the immediate discussion, I created a Netware IPX to UDP/IP bridge to coerce the original Command and Conquer to play over the Internet instead of just a local network. It worked on other games too, but CnC was the reason I made it. Nothing too exciting, but I've done enough that I feel pretty confident in expressing the following opinions:

Caps' article is, as he says, a little off-topic. The network, transport and session layer lessons learned from a realtime action game coping with the network infrastructure that existed 17 years ago do not apply well to a turn-based game with today's network infrastructure.

Simply put, for this sort of thing, a client/server model with HTTP done Comet-style or WebSockets is where it's at! Why? Lots of reasons:
  1. It has low enough latency and enough throughput for a 'scape game. All moves and chats will feel realtime. Basically, I'm saying it'll do the job needed and it will do it well.
  2. Good programming libraries exist for this for all major languages which should make implementing it straightforward and will make interoperability (if needed down the road) easier.
  3. Being HTTP (or HTTP-ish) traffic means traffic is pretty much guaranteed to be allowed to go out, getting through both perimeter and local *outgoing* firewalls and proxies. This isn't a huge problem yet, but it is increasing. No network provider is going to turn their back on HTTP for the foreseeable future.
  4. Sticking with client/server vs peer-to-peer lets the server record all games for player record-keeping purposes, later game reviews, etc. The data can be stored in a central repository and won't be "lost."
  5. But MUCH more importantly than #3 or #4, it will addresses two *huge* issues that didn't exist very much 17 years ago related to incoming traffic--doing NAT traversal and getting past incoming traffic firewalls. If you're rolling your own peer-to-peer network communication over some random tcp or udp port, be prepared to deal with those things or you'll have lots of people unable to talk to each other. If not peer-to-peer, you still have to deal with issue #3.
I mentioned only hosting a server here at HSers if it were HTTP or Websockets. We might host something if it is otherwise, but it is much easier to say "yes" if it is those. That's because of security reasons. We can reverse-proxy that traffic through our nginx server, only directly exposing *that* battle-tested code to the Internet, hiding yours behind that protective layer. It also makes traffic inspection easy. (Another plus of the above approach). Also if hosting a server at HSers, I can provide what you need to use HSers login information. A player claiming to be "Xorlof" will be Xorlof, "Lyrgard" will be Lyrgard, and "capsocrates" will be capsocrates.

Of course do whatever works for you, Lyrgard. It's your project after all. Feel free to ask questions if the above doesn't make sense, but that's my opinion. (And I am willing to help with server-side things, including coding, if you want a hand with the HTTP stuff.)

BTW, I *love* the lego camera setup.

There is nothing more dangerous than sincere ignorance and conscientious stupidity. --MLK

Last edited by Xorlof; May 29th, 2014 at 10:57 AM.
Reply With Quote
  #45  
Old May 29th, 2014, 11:04 AM
caps's Avatar
caps caps is offline
My six-year-old sister-in-law calls the shots
 
Join Date: October 6, 2010
Location: USA - CO - Denver area
Posts: 16,681
Images: 352
caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth caps is a man of the cloth
Re: HexScape

Websockets are really cool. Got to use them for a work project not too long ago to make a webpage communicate in realtime with some C++ apps.

Formerly known as capsocrates
--
Remixed Master Sets - challenge yourself with new terrain combinations!
--
Colorado Fall 2023 Multiplayer Madness
--
caps's Customs Redux - caps's multiplayer maps - caps's maps - Seagate

--
Continuing Classic Heroscape: C3V SoV
Reply With Quote
  #46  
Old June 2nd, 2014, 08:28 AM
Lyrgard's Avatar
Lyrgard Lyrgard is offline
 
Join Date: October 1, 2009
Location: France - Bordeaux
Posts: 1,056
Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla
Re: HexScape

After reading Xorlof posts and making some research on the internet, here is the new global architecture I'll make for HexScape :


The communications between modules will use buses, decoupling them a lot. Each module can post to the message bus, and each module can subscribe to receive some type of message. The client_core will post message for the server, that the client_network will receive, send to the server_network, that will post them in the server message bus. The server core will have subscribed for rthose message and will receive it. In fact, from the client_core and server_core, the network layer will be invisible, and all will work as if they were sharing the same message bus. This way, changing how the network layer work will be quite easy, if needed.

This bus architecture will make it super easy to add new modules. For instance, I'll be able to add a game recorder module in the server just by making it listens to some game event from the server message bus. Or a security module to handle authentication, ...

On the client side, the core layer is responsible of the functionnalities and the 3D. That why user inputs (Mouse and Keyboard) are forwarded to this layer to manage the 3D. All the GUI other than the 3D view are managed by the GUI layer. Apart from raw user inputs for the 3D view, all communications between the gui and the core will use the client message bus, making it once more super easy to change the GUI.

The dice manager module appears on both side (server and client) because it is needed locally when playing offline, and on the server when in a multiplayer game. The local version will just be shutdown as soon as the player connect to server.

As for the network protocol I'll use, I'm still reading right and left to make a decision. There definitively are good websocket java libraries out there.

So for now, HexScape is undergoing heavy structural changes to migrate to this new architecture. I truly believe it will ultimately help deliver HexScape faster AND make it easier to evolve. I'll let you know how it goes.
Reply With Quote
  #47  
Old June 2nd, 2014, 03:43 PM
Xorlof's Avatar
Xorlof Xorlof is offline
Super Smurfy
 
Join Date: February 22, 2011
Location: WI - Stevens Point
Posts: 3,116
Images: 17
Blog Entries: 5
Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer Xorlof is a wielder of the Ban Hammer
Re: HexScape

Sounds good Lyrgard. As I said, do whatever works best for you. I'm just out here speaking from the peanut gallery (a phrase which probably doesn't translate well). You can always change it later if need be.

I don't know if you planned to support server-less, peer-to-peer network games. If so, a while ago I devised a method for ensuring no peer cheats on die rolls. Your mention of both local and server dice managers made me think of it again. I'll type it up if it is of use for to you, but if not doing peer-to-peer network games, then I can't see any reason for including the complication to your code.

There is nothing more dangerous than sincere ignorance and conscientious stupidity. --MLK

Last edited by Xorlof; June 2nd, 2014 at 03:48 PM.
Reply With Quote
  #48  
Old June 2nd, 2014, 05:09 PM
Lyrgard's Avatar
Lyrgard Lyrgard is offline
 
Join Date: October 1, 2009
Location: France - Bordeaux
Posts: 1,056
Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla Lyrgard is inducted into the Halls of Valhalla
Re: HexScape

Quote:
Originally Posted by Xorlof View Post
Sounds good Lyrgard. As I said, do whatever works best for you. I'm just out here speaking from the peanut gallery (a phrase which probably doesn't translate well). You can always change it later if need be.

I don't know if you planned to support server-less, peer-to-peer network games. If so, a while ago I devised a method for ensuring no peer cheats on die rolls. Your mention of both local and server dice managers made me think of it again. I'll type it up if it is of use for to you, but if not doing peer-to-peer network games, then I can't see any reason for including the complication to your code.
For now I'll stay with server/client network, as it allow some simplicity for the user to connect without having to worry to much about port and firewall. Also, with the server software available, anyone will be able to host a server. So I see no need of a peer to peer network (well, I wanted one at first, out of geekiness I guess, but well, I'll better deliver something that work more easilly )

I researched the same subject you're speacking of, and found a solution based on :
1) Each player generate a private number, hash it, and send the hash to the others players.
2) When all hashes are received, each player send its number. The hash prevent a player to change its number after seeing the others numbers. All the numbers are appended in the same order (using player id to sort, for instance) and hashed.
3) This common hash is used to generate the same dice result on every client.

Was your solution something like that ?

And you're right, "speaking from the peanut gallery" doesn't translate well, and its the first time I encounter this expression. Thanks to you and google, I'll sleep more erudit that night
Reply With Quote
Reply

Go Back   Heroscapers > Custom HeroScape Creations > Software
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes



All times are GMT -4. The time now is 09:27 PM.

Heroscape background footer

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.