This is a read-only archive of the old Scratch 1.x Forums.
Try searching the current Scratch discussion forums.

#1 2012-07-27 09:40:55

TheSuccessor
Scratcher
Registered: 2010-04-23
Posts: 1000+

MeshServe, a Java based mesh server

I made this over the last 4 days. It's a mesh server that's written in Java, as the topic title suggests. Tested so far on Windows 7, 64 bit, with Java 6, 64 bit. Please test it, and tell me if it doesn't work on your machine.

Find it here: http://domclark.allalla.com/files/meshs … _1.1.0.zip

Features:
- Maintains a list of clients with their IP addresses and port numbers
- Server IP can be changed to any from a list of detected IPs
- Ability to evict clients
- Ability to mute clients
- Forwards any commands, not just scratch ones, so is compatible with any mesh mods
- Clients and Server mode (see application for description) - useful for recycling broadcast names, or stopping other clients snooping on your server-targeted broadcasts
- Send message function to send a raw command to all connected clients
- Logs all incoming commands
- Unlimited number of groups (separate networks)
- Doesn't need Scratch running to run
- Open source
- Not a virus!  tongue

Quite a few features aren't tested properly due to a lack of computers in my house (just 2). Testers are always much appreciated!  smile

Bugs:
- Fixed: Crash when receiving messages larger than 127 bytes

(Possible) Future Features:
- Variable viewer - maintains a list of all variable values
- Banning
- Port change option
- Please suggest more and rank existing ones!

Changelog:
Version 1.1.0 (2012-08-19)
- New feature: Groups
- New feature: Maximum number of clients option
- Comes with documentation
- Stability improvements
- GPL license added
- Behind-the-scenes improvements
Version 1.0.1 (2012-08-12)
- Bug fix: No longer crashes when receiving messages larger than 127 bytes
- New feature: "Mute" button to mute individual clients
Version 1.0.0 (2012-07-27)
- Initial release

Documentation:

Code:

 ___          ___ ___________     _________    ___       ___
 |  \        /  | |  ________|   / ________|   |  |      |  |
 |   \      /   | |  |          / /            |  |      |  |
 |    \    /    | |  |          \ \            |  |      |  |
 |  |\ \  / /|  | |  |_______    \ \_______    |  |______|  |
 |  | \ \/ / |  | |  ________|    \_______ \   |  _______   |
 |  |  \__/  |  | |  |                    \ \  |  |      |  |
 |  |        |  | |  |                    / /  |  |      |  |
 |  |        |  | |  |_______   _________/ /   |  |      |  |
 |__|        |__| |__________|  |_________/    |__|      |__|
   _________    ___________   __________    __           __   ____________
  / ________|   |  ________|  |  ______ \   | |          | |  |  _________|
 / /            |  |          |  |     \ \  | |          | |  |  |
 \ \            |  |          |  |     / /  \ \          / /  |  |
  \ \_______    |  |_______   |  |____/ /    \ \        / /   |  |________
   \_______ \   |  ________|  |   _  __/      \ \      / /    |  _________|
           \ \  |  |          |  | \ \         \ \    / /     |  |
           / /  |  |          |  |  \ \         \ \  / /      |  |
 _________/ /   |  |_______   |  |   \ \         \ \/ /       |  |________
 |_________/    |__________|  |__|    \_\         \__/        |___________|
 
 v1.1.0

 Copyright © 2012 Dominic Clark (TheSuccessor)
____________________________

  License
_____________________________

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
_____________________________
 
  ReadMe
_____________________________

Main Screen

  "Start" - This starts the server using the current settings. Clients cannot
            connect unless the server is running.

  "Stop" - Stops the server.

  "Configure" - Opens the configuration dialog.

  Clients table

    "IP address" - The IP address of the client.

    "Port number" - The remote port number of the client.

    "Group" - The group the client is currently in. This can be changed by double-
              clicking the cell, typing the name of the new group, then pressing
              enter.

  "Set as server" - This is only available if the server mode is set to "Clients
                    and server". Select a client from the clients list and press
                    this button to set it as the server for its group.

  "Evict" - This will evict the currently selected client from the server. If it
            is set as the server on a "Clients and Server" type server, a dialog
            box will appear to confirm the eviction.

  "Mute" - This prevents the currently selected client from sending messages to the
           server. If the currently selected client is already muted, it will be
           labelled "Unmute" and pressing it will allow the client to send messages
           again. Note that this does not prevent the client receiving messages.

  "Send message" - This button will send the message in the adjacent text box to all
                   clients currently connected to the server, regardless of the
                   group they occupy. It does not just broadcast the text - the full
                   message must be included (e.g. "broadcast "hello world"" or
                   "sensor-update "var" 10").

  Server log - This is the text area under the "Send message" button. The server logs
               events and exceptions here. If an exception occurs, please copy it and
               post it at http://scratch.mit.edu/forums/viewtopic.php?id=102532 so I
               can try and fix it. (An exception generally contains the text
               "Exception" somewhere and has multiple indented lines beginning with
               "at".)

Configuration dialog

  "OK" - Saves any settings changes that have been made, then exits the dialog. Saved
         options are stored in a file named "meshserve.dat", and persist between
         uses. This option is not available whilst the server is running.

  "Cancel" - Exits the dialog without saving setting changes.

  "Server" tab

    "Server IP address" - Sets the IP address on which the server runs. The program
                          automatically detects the available IP addresses to bind
                          to and displays them in the list. This is the IP address
                          that needs to be entered into Scratch in order to connect
                          (except if you are port-forwarding, in which case the IP
                          to connect to is your external IP and this box should be
                          set to whichever IP you port-forwarded to).

    "Enable logging" - If checked, any server events will be shown on the server log.
                       If not, only exceptions thrown by the program will be logged.

    "Clear log" - Pressing this button will clear the server log. It does not wait for
                  OK to be pressed, and is not undoable.

    "Max clients" - Sets the maximum number of clients that can be connected to the
                    server at once.

    This server is of type...

    "Mesh" - Behaves the same as a normal Scratch mesh network. All messages received
             in a group are sent to all members of the same group (unless, of course,
             the sender is muted).

    "Clients and Server" - In this mode, one client from each group can be set as the
                           "server" for that group. All messages sent by the server
                           are sent to all clients in its group. However, when a
                           non-server sends a message, it is only sent to the server
                           of the group. This is useful for stopping other clients
                           listening in on messages only intended for the server, or
                           for stopping broadcasts unnecessarily activating scripts
                           on all clients, for example.
  "Groups" tab

    Groups table

      "Name" - The name of the group. This can be edited by double-clicking the cell,
               typing the new name, then pressing enter. All groups must have
               different names.

      "Max clients" - The maximum number of clients that can occupy this group. This
                      can be edited the same way as before. The default group must
                      have at least the same number as the client cap on the server.

      "Number of clients" - The number of clients currently in this group.

      "Properties" - The properties of this group. These can be changed using the
                     buttons below.

    "Add new" - This adds a new group. There is no limit on the number of groups.

    "Delete" - Deletes the currently selected group. The default group cannot be
               deleted, and there must always be at least one group.

    "Set as default" - Sets the currently selected group as the default. This is the
                       group that clients are automatically put into when they join.
                       The group must be public and have a max clients number at
                       least that of the client cap on the server.

    Group type - Sets the group type to either public or invite. Any unmuted client
                 can join a public group by broadcasting <GroupName to the server.
                 Clients can only join invite groups by having their group set in the
                 clients table on the main screen.

Source can be found here.

Last edited by TheSuccessor (2012-08-19 09:09:33)


/* No comment */

Offline

 

#2 2012-07-27 10:01:24

LS97
Scratcher
Registered: 2009-06-14
Posts: 1000+

Re: MeshServe, a Java based mesh server

WOW! This is very cool, I downloaded it and will try it with friends. Is the documentation in the JAR?

Offline

 

#3 2012-07-27 10:18:15

TheSuccessor
Scratcher
Registered: 2010-04-23
Posts: 1000+

Re: MeshServe, a Java based mesh server

LS97 wrote:

WOW! This is very cool, I downloaded it and will try it with friends. Is the documentation in the JAR?

Sorry, no documentation yet other than the post above.
You'll just have to press buttons and see what happens.  tongue

Last edited by TheSuccessor (2012-07-27 10:18:42)


/* No comment */

Offline

 

#4 2012-07-27 11:29:59

MathWizz
Scratcher
Registered: 2009-08-31
Posts: 1000+

Re: MeshServe, a Java based mesh server

HE LIVES?!  yikes

Long time no see.  wink

Nice project you have there. For source code, try Github. It's awesome once you get the hang of it.  smile

Last edited by MathWizz (2012-07-27 11:30:11)


http://block.site90.net/scratch.mit/text.php?size=30&amp;text=%20A%20signature!&amp;color=333333

Offline

 

#5 2012-07-27 11:45:39

SciTecCf
Scratcher
Registered: 2011-11-23
Posts: 1000+

Re: MeshServe, a Java based mesh server

Epic, love it.


http://bit.ly/LCZEJRhttp://bit.ly/LSONcOhttp://bit.ly/LF3vIc
http://trinary.site40.net/images/scratchrank.php?username=SciTecCf&amp;display=small

Offline

 

#6 2012-07-27 13:34:19

TheSuccessor
Scratcher
Registered: 2010-04-23
Posts: 1000+

Re: MeshServe, a Java based mesh server

MathWizz wrote:

For source code, try Github. It's awesome once you get the hang of it.  smile

I've put the source on Github, but I have a feeling I'm not doing it right...


/* No comment */

Offline

 

#7 2012-07-27 13:42:47

MathWizz
Scratcher
Registered: 2009-08-31
Posts: 1000+

Re: MeshServe, a Java based mesh server

TheSuccessor wrote:

MathWizz wrote:

For source code, try Github. It's awesome once you get the hang of it.  smile

I've put the source on Github, but I have a feeling I'm not doing it right...

You've done it right. Although... You could put some documentation in a file named "README.md":

Save a file named README.md in the base dir of your repo.

Then do this in the git console:

Code:

$ git add README.md
$ git commit -am "<insert message here (could be "added readme")>"
$ git push

Now you can look at your repo and see a readme file.  big_smile

Last edited by MathWizz (2012-07-27 13:43:55)


http://block.site90.net/scratch.mit/text.php?size=30&amp;text=%20A%20signature!&amp;color=333333

Offline

 

#8 2012-07-27 14:08:51

LS97
Scratcher
Registered: 2009-06-14
Posts: 1000+

Re: MeshServe, a Java based mesh server

I tried it and didn't really understand its functions  tongue
So do you need to run one server on a computer, and Scratch on the other, or...

Please please please, clarify  smile

Offline

 

#9 2012-07-27 14:52:12

TheSuccessor
Scratcher
Registered: 2010-04-23
Posts: 1000+

Re: MeshServe, a Java based mesh server

You can run the server anywhere. First of all, if you're playing/testing with friends, you probably want to click configure and change the IP to your Hamachi IP. Then press start, and it should print out the IP it's running on. Join mesh on that IP, and a row should come up on the clients table. Get your friends to join on your hamachi IP, and rows should come up for them too. After that, just treat it as normal mesh.

As for Clients and Server, I haven't got time to explain that now. Just fiddle around, and if you can't get it to work, never mind.

Hope this helps!  smile

(I won't be on for 2 weeks starting tomorrow as I'm going to Wales, but after then I will be back for the rest of the UK summer holidays.)

Last edited by TheSuccessor (2012-07-27 14:56:30)


/* No comment */

Offline

 

#10 2012-07-27 15:01:17

SJRCS_011
Scratcher
Registered: 2011-02-07
Posts: 1000+

Re: MeshServe, a Java based mesh server

HI TS!  That's a nice java mesh server you made there!  big_smile
On another note, have you finished with the Panther java player I requested on ModCentral?


http://i.imgur.com/vQqtH.png
Learning to Program in a Nutshell:  "You're missing a closing parentheses" - LS97

Offline

 

#11 2012-07-27 16:22:38

TheSuccessor
Scratcher
Registered: 2010-04-23
Posts: 1000+

Re: MeshServe, a Java based mesh server

SJRCS_011 wrote:

Have you finished with the Panther java player I requested on ModCentral?

Almost - it's a bit buggy but I can give it to you now (or in two weeks, actually) if you want.


/* No comment */

Offline

 

#12 2012-07-28 12:07:24

SJRCS_011
Scratcher
Registered: 2011-02-07
Posts: 1000+

Re: MeshServe, a Java based mesh server

TheSuccessor wrote:

SJRCS_011 wrote:

Have you finished with the Panther java player I requested on ModCentral?

Almost - it's a bit buggy but I can give it to you now (or in two weeks, actually) if you want.

Sure! I'd love it, and I'm sure tons of other people would too!  I'm currently working on my own custom Java Player, but, before I'm finished with it, this would be awesome!  big_smile

Would you mind if I decompiled it to see how you made some of the blocks?


http://i.imgur.com/vQqtH.png
Learning to Program in a Nutshell:  "You're missing a closing parentheses" - LS97

Offline

 

#13 2012-07-28 12:11:25

Jackieee
New Scratcher
Registered: 2012-07-05
Posts: 100+

Re: MeshServe, a Java based mesh server

Daaaang, that's cool.

Offline

 

#14 2012-08-12 07:51:14

TheSuccessor
Scratcher
Registered: 2010-04-23
Posts: 1000+

Re: MeshServe, a Java based mesh server

I'm back from holiday now, and version 1.0.1 is out.

Version 1.0.1 (2012-08-12)
- Bug fix: No longer crashes when receiving messages larger than 127 bytes
- New feature: "Mute" button to mute individual clients

@SJRCS_011 I can't find the player at the moment, will carry on looking.

SJRCS_011 wrote:

Would you mind if I decompiled it to see how you made some of the blocks?

When I find it, yes, feel free.

I was thinking of adding an authentication feature to this, and need some help making a secure implementation. This will probably use the user's Scratch details. A few thoughts:

- The password can't be sent to the server - it would be easy to make a modification to steal passwords.
- Using HTTPS or other encryption shouldn't be necessary, since the Scratch site uses plain HTTP.
- This will most likely need a Scratch mod (probably a change set rather than a new image).
- The server could check with an external site whether a given user is trying to log in to it with a valid username and password (similar to the Minecraft server login system).

Ideas would be appreciated.  smile


/* No comment */

Offline

 

#15 2012-08-19 09:19:20

TheSuccessor
Scratcher
Registered: 2010-04-23
Posts: 1000+

Re: MeshServe, a Java based mesh server

Version 1.1.0 is out! A lot of new features have been added, succinctly covered in the change log by 'Groups'. See the documentation for full details.

The source code is now included with the download for ease of access. Delete the 'src' folder, if you don't want it - it doesn't have to be there for MeshServe to run.

Version 1.1.0 (2012-08-19)
- New feature: Groups
- New feature: Maximum number of clients option
- Comes with documentation
- Stability improvements
- GPL license added
- Behind-the-scenes improvements

Documentation:

Code:

 ___          ___ ___________     _________    ___       ___
 |  \        /  | |  ________|   / ________|   |  |      |  |
 |   \      /   | |  |          / /            |  |      |  |
 |    \    /    | |  |          \ \            |  |      |  |
 |  |\ \  / /|  | |  |_______    \ \_______    |  |______|  |
 |  | \ \/ / |  | |  ________|    \_______ \   |  _______   |
 |  |  \__/  |  | |  |                    \ \  |  |      |  |
 |  |        |  | |  |                    / /  |  |      |  |
 |  |        |  | |  |_______   _________/ /   |  |      |  |
 |__|        |__| |__________|  |_________/    |__|      |__|
   _________    ___________   __________    __           __   ____________
  / ________|   |  ________|  |  ______ \   | |          | |  |  _________|
 / /            |  |          |  |     \ \  | |          | |  |  |
 \ \            |  |          |  |     / /  \ \          / /  |  |
  \ \_______    |  |_______   |  |____/ /    \ \        / /   |  |________
   \_______ \   |  ________|  |   _  __/      \ \      / /    |  _________|
           \ \  |  |          |  | \ \         \ \    / /     |  |
           / /  |  |          |  |  \ \         \ \  / /      |  |
 _________/ /   |  |_______   |  |   \ \         \ \/ /       |  |________
 |_________/    |__________|  |__|    \_\         \__/        |___________|
 
 v1.1.0

 Copyright © 2012 Dominic Clark (TheSuccessor)
____________________________

  License
_____________________________

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
_____________________________
 
  ReadMe
_____________________________

Main Screen

  "Start" - This starts the server using the current settings. Clients cannot
            connect unless the server is running.

  "Stop" - Stops the server.

  "Configure" - Opens the configuration dialog.

  Clients table

    "IP address" - The IP address of the client.

    "Port number" - The remote port number of the client.

    "Group" - The group the client is currently in. This can be changed by double-
              clicking the cell, typing the name of the new group, then pressing
              enter.

  "Set as server" - This is only available if the server mode is set to "Clients
                    and server". Select a client from the clients list and press
                    this button to set it as the server for its group.

  "Evict" - This will evict the currently selected client from the server. If it
            is set as the server on a "Clients and Server" type server, a dialog
            box will appear to confirm the eviction.

  "Mute" - This prevents the currently selected client from sending messages to the
           server. If the currently selected client is already muted, it will be
           labelled "Unmute" and pressing it will allow the client to send messages
           again. Note that this does not prevent the client receiving messages.

  "Send message" - This button will send the message in the adjacent text box to all
                   clients currently connected to the server, regardless of the
                   group they occupy. It does not just broadcast the text - the full
                   message must be included (e.g. "broadcast "hello world"" or
                   "sensor-update "var" 10").

  Server log - This is the text area under the "Send message" button. The server logs
               events and exceptions here. If an exception occurs, please copy it and
               post it at http://scratch.mit.edu/forums/viewtopic.php?id=102532 so I
               can try and fix it. (An exception generally contains the text
               "Exception" somewhere and has multiple indented lines beginning with
               "at".)

Configuration dialog

  "OK" - Saves any settings changes that have been made, then exits the dialog. Saved
         options are stored in a file named "meshserve.dat", and persist between
         uses. This option is not available whilst the server is running.

  "Cancel" - Exits the dialog without saving setting changes.

  "Server" tab

    "Server IP address" - Sets the IP address on which the server runs. The program
                          automatically detects the available IP addresses to bind
                          to and displays them in the list. This is the IP address
                          that needs to be entered into Scratch in order to connect
                          (except if you are port-forwarding, in which case the IP
                          to connect to is your external IP and this box should be
                          set to whichever IP you port-forwarded to).

    "Enable logging" - If checked, any server events will be shown on the server log.
                       If not, only exceptions thrown by the program will be logged.

    "Clear log" - Pressing this button will clear the server log. It does not wait for
                  OK to be pressed, and is not undoable.

    "Max clients" - Sets the maximum number of clients that can be connected to the
                    server at once.

    This server is of type...

    "Mesh" - Behaves the same as a normal Scratch mesh network. All messages received
             in a group are sent to all members of the same group (unless, of course,
             the sender is muted).

    "Clients and Server" - In this mode, one client from each group can be set as the
                           "server" for that group. All messages sent by the server
                           are sent to all clients in its group. However, when a
                           non-server sends a message, it is only sent to the server
                           of the group. This is useful for stopping other clients
                           listening in on messages only intended for the server, or
                           for stopping broadcasts unnecessarily activating scripts
                           on all clients, for example.
  "Groups" tab

    Groups table

      "Name" - The name of the group. This can be edited by double-clicking the cell,
               typing the new name, then pressing enter. All groups must have
               different names.

      "Max clients" - The maximum number of clients that can occupy this group. This
                      can be edited the same way as before. The default group must
                      have at least the same number as the client cap on the server.

      "Number of clients" - The number of clients currently in this group.

      "Properties" - The properties of this group. These can be changed using the
                     buttons below.

    "Add new" - This adds a new group. There is no limit on the number of groups.

    "Delete" - Deletes the currently selected group. The default group cannot be
               deleted, and there must always be at least one group.

    "Set as default" - Sets the currently selected group as the default. This is the
                       group that clients are automatically put into when they join.
                       The group must be public and have a max clients number at
                       least that of the client cap on the server.

    Group type - Sets the group type to either public or invite. Any unmuted client
                 can join a public group by broadcasting <GroupName to the server.
                 Clients can only join invite groups by having their group set in the
                 clients table on the main screen.

Also, I'm still thinking about authentication...

TheSuccessor wrote:

I was thinking of adding an authentication feature to this, and need some help making a secure implementation. This will probably use the user's Scratch details. A few thoughts:

- The password can't be sent to the server - it would be easy to make a modification to steal passwords.
- Using HTTPS or other encryption shouldn't be necessary, since the Scratch site uses plain HTTP.
- This will most likely need a Scratch mod (probably a change set rather than a new image).
- The server could check with an external site whether a given user is trying to log in to it with a valid username and password (similar to the Minecraft server login system).

Ideas would be appreciated.  smile


/* No comment */

Offline

 

#16 2012-08-19 17:17:48

SJRCS_011
Scratcher
Registered: 2011-02-07
Posts: 1000+

Re: MeshServe, a Java based mesh server

I've got an idea for the authentication:
Have the client mod send a plain-text password to a site that you own (an idea might be Meshserver.tk possibly) via GET or POST, but POST may work better.  That site, after verifying the password, will then reply with a random code, which is then stored in a database on that server.  The client then takes that code, and it sends that and the username to the server.  The server will then check against the website via GET or POST giving the code and the username.  If the username and code match up, then the website will return true. Otherwise, it will return false.
One important thing is that each time a user logs in with their scratch username and password, the code that is echoed back changes, so you shouldn't be able to guess it.

I would also be willing to code the website thingy if you would like.

Last edited by SJRCS_011 (2012-08-19 17:18:21)


http://i.imgur.com/vQqtH.png
Learning to Program in a Nutshell:  "You're missing a closing parentheses" - LS97

Offline

 

#17 2012-08-20 12:51:33

TheSuccessor
Scratcher
Registered: 2010-04-23
Posts: 1000+

Re: MeshServe, a Java based mesh server

SJRCS_011 wrote:

I've got an idea for the authentication:
Have the client mod send a plain-text password to a site that you own (an idea might be Meshserver.tk possibly) via GET or POST, but POST may work better.  That site, after verifying the password, will then reply with a random code, which is then stored in a database on that server.  The client then takes that code, and it sends that and the username to the server.  The server will then check against the website via GET or POST giving the code and the username.  If the username and code match up, then the website will return true. Otherwise, it will return false.
One important thing is that each time a user logs in with their scratch username and password, the code that is echoed back changes, so you shouldn't be able to guess it.

I would also be willing to code the website thingy if you would like.

Sounds like a brilliant idea! I'll have a go at coding the website myself, but if I run into problems I'll go to you for help.  smile

As for the Panther player, I think it was on an old computer that we threw away (Windows 98, Pentium III  big_smile ), so I can't get that for you now. However, one of my long-running projects is to rewrite the Java player to make it slightly faster, easier to mod, support mesh and be more similar to Scratch. I'll probably make a Panther player from that, if you can wait.


/* No comment */

Offline

 

#18 2012-08-20 15:28:14

SJRCS_011
Scratcher
Registered: 2011-02-07
Posts: 1000+

Re: MeshServe, a Java based mesh server

TheSuccessor wrote:

SJRCS_011 wrote:

I've got an idea for the authentication:
Have the client mod send a plain-text password to a site that you own (an idea might be Meshserver.tk possibly) via GET or POST, but POST may work better.  That site, after verifying the password, will then reply with a random code, which is then stored in a database on that server.  The client then takes that code, and it sends that and the username to the server.  The server will then check against the website via GET or POST giving the code and the username.  If the username and code match up, then the website will return true. Otherwise, it will return false.
One important thing is that each time a user logs in with their scratch username and password, the code that is echoed back changes, so you shouldn't be able to guess it.

I would also be willing to code the website thingy if you would like.

Sounds like a brilliant idea! I'll have a go at coding the website myself, but if I run into problems I'll go to you for help.  smile

As for the Panther player, I think it was on an old computer that we threw away (Windows 98, Pentium III  big_smile ), so I can't get that for you now. However, one of my long-running projects is to rewrite the Java player to make it slightly faster, easier to mod, support mesh and be more similar to Scratch. I'll probably make a Panther player from that, if you can wait.

I'm actually doing that myself, and it'll actually have mods built into it.
Great minds think alike  tongue


http://i.imgur.com/vQqtH.png
Learning to Program in a Nutshell:  "You're missing a closing parentheses" - LS97

Offline

 

#19 2012-08-28 15:34:04

playzooki
Scratcher
Registered: 2012-02-07
Posts: 100+

Re: MeshServe, a Java based mesh server

I tried chat.py. it does not work.
Also what does it do?

Last edited by playzooki (2012-08-28 15:35:53)


I iz a sig. So there. CLICK ME ITS SO IMPORTANT!!!!

Offline

 

Board footer