Project MapChat - Visual Chatrooms/Channels

Project MapChat - Visual Chatrooms/Channels

Postby Vandar » 11 Dec 2015, 13:17

The idea of this project is to expand on the idea of chat "rooms" and give users a graphical environment in form of a map to meet with their avatars and chat. I've been working on it for a few days now, and I feel unsure what to do now, so I'm posting here to see if there is interest in such type of a project, and if there are suggestions and ideas which could be useful for such a project.

I've named the "chat rooms" realms, and they work like a channel in IRC. The realm owner will have moderator rights on their realm, much like in IRC, too. A while I actually pondered to link it to the IRC network, but I guess it would be sort of abuse to spam a channel with the messages that only this sort of client can interpret, like "move user XYZ from position a,b to e,f" ... so I decided to make it separate, but with IRC in mind.

So this is how it starts, after choosing a name and selecting a server:

realm_selection.jpg


While it comes with some artwork to use readily, I also want to allow users to create their own maps for chatting and import their own artwork for designing maps and avatars. But that's future ...

This is the example map that I've made.

outdoor_map.jpg


Code-wise MapChat is a spinoff from my Jewelhunt project - while Jewelhunt was meant to be a single palyer RPG, I wanted to see if I can make a multi-player version, too. Currently it's proof of concept code. It consists of a server and a client, where players can log in, join one premade map, walk around, and of course, send chat messages to everyone nearby. The architecture should scale up to a point, I assume it can bear a few hundred users and some dozens of maps on a server, but currently it's definitely aimed at smaller installations - e.g. someone running a chat server with a realm to meet with their friends. At some point I'd like to work on a server network like IRC, where servers can forward messages and actions to other servers which are running the same realms. Let's say, make a graphical re-interpretation of IRC and it's channels.

Code is here, part of the Jewelhunt project (see the 'mapchat' subtree):
http://sourceforge.net/p/jewelhunt/code ... trunk/src/

There is a map editor, which I've used to make the demo map, but it lacks a lot in usability. That is, in the current state I don't think anyone else wants to use it as it is now, and making a better map editor will be needed.

map_editor.jpg
In soviet russia, code debugs you.
User avatar
Vandar
 
Posts: 322
Joined: 17 Mar 2014, 14:32

Re: Project MapChat - Visual Chatrooms/Channels

Postby Vandar » 12 Dec 2015, 23:57

I still haven't made tests with a real server (other than localhost), but so far it looks fairly well - as usual, many, many bugs to squash, but progress is fine. The current code allows to upload user-made maps, get realm lists from the server, and join a new realm. The maps compress really well, so it's usually only a few kb to transfer for a map.

A desert map, which I made for testing:

desert_map.jpg


If I want to want to develop this in the direction of an multi player game, handling items is probably the next step - picking up items from the ground, drop them, use them ... a lot of client-server detail stuff to code.

PS: In case you are wondering - the bright diamond shaped part of the map is the "listening range" of the player's avatar. Chats are 'local' e.g. other avatars which are outside the diamond shape can't be 'heard', that is, their messages won't be received by the client.
In soviet russia, code debugs you.
User avatar
Vandar
 
Posts: 322
Joined: 17 Mar 2014, 14:32

Re: Project MapChat - Visual Chatrooms/Channels

Postby Vandar » 13 Dec 2015, 13:01

I've uploaded a first testing release to Sourceforge:

https://sourceforge.net/projects/jewelh ... chat/r001/

There are scripts included to run the server, client and editor (Windows *.bat and Linux *.sh scripts). It needs Java 7 or newer to run.

From within the client, you can upload a map with the "/upload" command, and get a realm list with the "/list" command. I've tested this with server and two clients in my PC, and it seemed to work without apparent problems, but I expect lots of bugs still in there.

If you have any sort of feedback, suggestions or ideas, I'll be happy to hear :)

PS: to select a realm you must type a character like 'a' for the first realm, 'b' for the second etc. I felt lazy when doing that UI ... to move your PC, just click a spot on the map. The server does some pathfinding for you.
In soviet russia, code debugs you.
User avatar
Vandar
 
Posts: 322
Joined: 17 Mar 2014, 14:32

Re: Project MapChat - Visual Chatrooms/Channels

Postby Vandar » 13 Dec 2015, 17:05

Vandar {l Wrote}:... handling items is probably the next step - picking up items from the ground, drop them, use them ... a lot of client-server detail stuff to code.


Not my favorite sort of work, but it's done now. All item data is held by the server, although copies are handed out to the clients for display, all operations will use the server data, and clients never send item data to the server. Thus I hope hackers can't change item data easily, but must trick the server into doing that, which should be hard

Still a few things missing to make it an MMO, but it feels close already.
In soviet russia, code debugs you.
User avatar
Vandar
 
Posts: 322
Joined: 17 Mar 2014, 14:32

Who is online

Users browsing this forum: No registered users and 1 guest