You are on page 1of 48

How to use Hamachi and NSoCS for openCanvas 1.

1 Users

Page 1 of 48

Hi everybody! I wrote this tutorial in hopes of making Hamachi and especially NSoCS and their potential benefits understandable and available to all oC 1.1 users. If somebody who never used openCanvas 1.1 before sees this tutorial and decides to give it a try, thatd be a nice bonus too. I absolutely love networking and drawing with other oC 1.1 users and I think more people would use oC 1.1 and more oC 1.1 users would network if they just knew how to do it. So thats my goal. However, I have to stipulate that I CANT give you tech support if something goes wrong. I needed tech support myself to get Page 2 of 48

NSoCS working, even though its not hard to do. Thats how much I know about troubleshooting. I am not computer savvy. So please grab your nearest geek and ask him instead of me, because Ill be useless. Its not that I dont want to help, its just that I can barely help myself when it comes to software/hardware problems. That said, it really isnt hard to get these three programs up and running together. Hamachi has eliminated most of my Agh, cant get through some firewall! oC error messages and NSoCS has reduced the number of My 6-hour network session just crashed and burned, nooooo! wails that my family puts up with. Chances are that they can do the same for you. =) If you somehow manage to do yourself damage with or because of this tutorial, please dont sue me. All I have is my sketchbook and my oC 1.1 program. Okay! On to the basics.

Page 3 of 48

Intro: What is openCanvas 1.1? openCanvas 1.1 (or oC 1.1, as it's commonly typed) is a neat little drawing/sketching program designed from the ground up to work with Wacom pen tablets. It runs on Windows only. I like it very much. It can network with its siblings on other people's computers, and it can save and replay event files (which is like saving and then watching a movie of everything you did to create your drawing). It's easy to use once you understand its quirks, and it's free! It can be downloaded here. Page 4 of 48

You can find a detailed introduction to the program here.

There is a nice guide to the different tools and features here.

There is a beautiful two-part guide to painting in openCanvas 1.1 here and here. openCanvas 1.1 a very small program and does not need to be installed after downloading. Page 5 of 48

What about the other kinds of openCanvas? Yes, there are commercial releases of openCanvas; as I type this, the latest release is 4.5.19 Plus. You can read all about it here. For the purposes of this tutorial, suffice it to say that newer versions of openCanvas cannot network, although they can do other cool things and I like my oC 4.5 Plus very much too. The newer versions are not free; current price is 6,800 yen (about $75 USD). You can download a trial version and pay for a key with PayPal if you like the program enough to buy it.

Page 6 of 48

Networking Back to openCanvas 1.1 oC 1.1's most notable feature is its ability to network. Two or more artists using oC can connect to each other and draw together on the same picture, somewhat like paint chatting but (IMHO) much nicer since you don't have random idiots barging in and out. oC 1.1 includes a simple chat window so you can type back and forth while you draw.

Page 7 of 48

Hamachi If you and your networking buddy are able to connect directly to each other's oC sessions using nothing but oC 1.1, that's great. Usually, though, a router or firewall will get in the way. Hence, you might need Hamachi to network with oC 1.1. Fortunately, Hamachi is easy to get and use. It can be downloaded here. The free, Unmanaged mode is all you need. Download and install as you would any normal program. All participants in an openCanvas + Hamachi networking session must have Hamachi, so if you're going to use it, make sure your networking buddy has it too. Page 8 of 48

Now you have to decide who will host the Hamachi network. Do rock paper scissors or something.

Page 9 of 48

Hosting Run Hamachi. Mouse over the round power button in the upper left-hand corner and make sure it's on. It's a little confusing because if it's ON when you mouseover, the popup will say "Power off" which is what will happen if you CLICK the button. If the power button is OFF when you mouseover, the popup will say "Power on" (again, that's what will happen if you CLICK the button) AND Hamachi will say "offline" right underneath the IP number.
Hamachi is OFF Hamachi is ON

Page 10 of 48

So anyways, make sure that the power button is ON and that you do NOT see the little "offline" status under the Hamachi IP.

Creating a Network Now you need to create a network. It's not hard. Hamachi has three tabs at the top of its little window: System, Network, and Help. You want Network>Create a New Network.

Page 11 of 48

Network ID: This is the name of your Hamachi network. It's what other people using Hamachi will type in order to find you. Password: What it says; used to restrict access to your network. Write the password down somewhere safe and don't lose it; you will need to give it out whenever you invite a new person to join your Hamachi network. Fortunately, once a person has joined your Hamachi network, they will not need to rejoin. They just have to run Hamachi and power it up and it will automatically connect to your network, so long as you are online and also running Hamachi. Page 12 of 48

Click "Create". Ta-dah! You're done. The network will continue to exist until you delete it, so you should only have to do this once. Joining Make sure your networking host is plugged into the Internet and that he or she is running Hamachi. Make sure YOU are running Hamachi. ;) Make sure the power button is ON. Page 13 of 48

Go to the Network tab and click "Join an existing network..."

Type in the Network ID (this is the NAME of the network, not its IP number) and the Password, if there is one, and click Join. Ta-dah! Barring unforeseeable hiccups, you should be in.

Page 14 of 48

You only have to join a network once. Once you're in, you're in until you leave or the host deletes the network or kicks you out of it, but hopefully everyone behaves and that won't happen. Note: Hamachi is chat-capable. Right-click on someone's Hamachi handle and select Chat to open a chat window. This is handy if you need to go back and forth before your oC programs are connected.

Page 15 of 48

+
Using openCanvas 1.1 with Hamachi Make sure you and your networking buddy are both running Hamachi and that both Hamachis are powered ON. Make sure both of you are also have openCanvas 1.1 open.

Page 16 of 48

To Host Whoever is hosting the oC network session needs to open the openCanvas network window via Network>Show Network Window... Next, go under the Network Preferences tab and decide how big you want your canvas to be, how many layers each of you can have (maximum of four), and how many people can join the session (again, maximum of four). Port should probably be left at the default 9001 unless you have a good reason for changing it. See this page for help on connecting through a firewall. Page 17 of 48

Now the host needs to go under the Server tab, choose a User Name and (if desired) a Password, and click Stand By.

The session is now running and other participants can join.

Page 18 of 48

To Join To join the openCanvas network session that we just activated above, the person joining must know the host's Hamachi IP number.

Go under Network>Show Network Window... Page 19 of 48

Pick the Client tab. In the Connect IP field, enter the server's Hamachi IP number. Enter your desired username in the User Name field. Enter the session Password if the serving oC user has chosen to set one (note, this is not the same as the Hamachi password; its the password they set in oC 1.1 itself). If they didnt set a password, leave this blank. Page 20 of 48

Click the funny button on the far right. Barring unforeseeable technical problems, you're in. You can now start drawing and chatting!

Page 21 of 48

Networking Limitations Now, whether or not you use Hamachi, an ordinary oC 1.1 networking session limits you to four users, who can be allotted a maximum of four layers each. You cannot draw on each other's layers.

If the session is interrupted (i.e. your little brother pulls out the Internet cable or one of the networkers is kicked off their computer), everything the disconnected user(s) have drawn will disappear from other session participants' screens and it will be impossible to resume the session from where they left (or rather, were cut) off. Frustrating, no? Page 22 of 48

Wouldn't it be nice if there were a way around those drawbacks?

Well, there is! You can live with these limitations, or you can take advantage of NSoCS. Page 23 of 48

NSoCS NSoCS is a benign hack of sorts that, when used in conjunction with openCanvas 1.1, allows you to circumvent oC's most serious networking limitations. With NSoCS, you can have more than four users in a session (I haven't played with this aspect of NSoCS, so I can't tell you much about it; using Hamachi limits you to six users anyways). You can have a maximum of 24 available layers, total. Also, when Extended User Mode is turned ON, you can draw on each other's layers. In effect, openCanvas 1.1 will see everybody as the same user. (This means you can also Undo each other's actions, so be careful erase mistakes rather than Undoing them.) Page 24 of 48

If a user is disconnected from a network session, they can log back in to the NSoCS server and, as soon as the replay catches up to realtime, the session can be continued as if nothing happened. (I'd still advise saving frequently though. ^^;) This is extremely handy if you've been collaborating for two hours and somebody bumps a power switch.

Page 25 of 48

If the NSoCS host logins in as an admin and uses the /save (filename) command, the session can then be COMPLETELY terminated NSoCS closed, oC programs disconnected, computers turned off even and continued later by running NSoCS, reconnecting oC programs, and using the /restore (filename) command. So you can work on something together, /save it when somebody has to go, shut everything down, and easily /restore the session the next day. Page 26 of 48

Page 27 of 48

I've been able to restore files this way even when my network buddy used a different computer than they did previously or when I connected with a different buddy than the person who had worked on the file with me before.

Page 28 of 48

Downloading and Installing NSoCS NSoCS can be obtained here. The ReadMe file contains instructions, but I'll include screenshots here too just in case. Download the Zip file. Extract all files into a folder. I put mine in its own folder inside my portalgraphics folder, next to oC 1.1.

Page 29 of 48

Open oc_server.cfg in your favorite text editor and look at the settings. I like to use Notepad++. Ah I dont think my screencaps show the default settings, since I changed my oc_server.cfg file around to match my preferences. Its okay; you may decide to change yours too. Page 30 of 48

Page 31 of 48

Let's take a minute to talk about all these settings. For the ones with a 1 or 0, just remember that 1 means ON or YES, 0 means OFF or NO.

oc_server.cgf file settings


# Server name N-SoCS_Serv # Server password (blank for none)
You can set a server password if you want; I usually leave it blank. This is not the same as the admin password.

# Server port 9001


Leave this alone unless you have a good reason to change it

# Maximum clients 2
This is how many people NSoCS will allow to connect

# Canvas width 2000


How wide you want your canvas to be

# Canvas height 1500

Page 32 of 48

How tall you want your canvas to be # Layers (per client in non-extended,

total in extended) 12
What it says; in normal mode, you will have this many layers per user. In extended mode, this is your TOTAL number of layers. The maximum number of total layers, in any mode, is 24.

# Enable keepalives? 1
I really don't know what this means. It's not mentioned in the ReadMe. But "keep alive" sounds like a good thing to me, so I leave it on.

# Enable file-based event recovery? 1


Yes, yes, leave this on. This will allow you to /restore a /save-d session file even if everything disconnects and shuts off.

# Enable quick event recovery? 0


This is broken for now, says the ReadMe file. Leave it off.

# Maximum quick recovery events 20

Page 33 of 48

Ditto; broken feature. Ignore it.

# Time to wait with no clients connected before auto-saving (in minutes, 0=disabled) 0
I suppose this is for people who like to leave a session open and see how many people pop in and out? I usually schedule my network sessions, so I leave it off.

# Use extended user mode? 1


I like extended user mode because it lets you draw on each other's layers. If you don't want that, leave it off.

# Use layer locking (in extended user mode)? 1


This lets you "lock" a given layer and mess with it without anyone else seeing what you're doing. I haven't found much use for it, but maybe you will. I leave it on because it doesn't seem to hurt anything.

# Administrator none) # As a note:

password this is

(blank

for

relatively

Page 34 of 48

insecure, # so don't pick something important! p@ssw*rd


YES. You MUST set an admin password if you want to /save and /restore session files. Set it set it set it!!! Don't use UPPERCASE letters in the password or it will be rejected when you try to use it, but lowercase letters and the numbers and the number row symbols are fine.

# Fini!
So, fiddle with the settings until you think you're going to like them, and save oc_server.cfg. Note that you can change oc_server.cfg and save the changes while NSoCS is running, but the changes will not take effect until NSoCS has been closed and re-opened.

Page 35 of 48

Using NSoCS with oC 1.1 All right! Now you can run openCanvas 1.1. (If you usually use Hamachi to network, turn that on too at this point.) Run oC_Server.exe. A window pops up and runs in the background. You cant really do anything with this window except close it, which will shut down oC_Server.exe. Anything session participants type into their oC chat windows will appear here as well as in oC. Page 36 of 48

Go to openCanvas's Network>Show Network Window... and click on the Client tab. For Connect IP, enter 127.0.0.1 (localhost, i.e. your own computer). Essentially, even though you are hosting the NSoCS session on your computer, you are telling oC to connect to that NSoCS server as if you were an ordinary user dialing in to someone else's session. Note that NSoCS will ignore the settings on your oC 1.1 Network Preferences tab and instead follow the settings you set in oc_server.cfg. Enter a username and, if you set one (I usually dont), the server password. Click the button on the right to connect. Now you're in! Yay. Draw something. =)

Page 37 of 48

Other users can connect to your NSoCS session just as they would join a normal oC session. Again, if you're using Hamachi along with NSoCS, make sure they have Hamachi too and be sure to give them your Hamachi IP. If Extended User Mode is set to 1 (ON), you can all draw on each other's layers. Extended User Mode also means that "Undo" will Undo the last action taken, no matter who did it, so be careful. XD Now! That's all fine and dandy and it's great that you can draw on each other's layers, but what if your session is interrupted? What if the power goes out? What if your hard drive croaks? Okay, there's not much NSoCS can do if the power dies or your hard drive bites the dust, but it can do something about interrupted networking sessions.

At this point, you need to make sure that you've set an admin password in oc_server.cfg AND that you remember what it was. Page 38 of 48

So let's say that you remembered to set an admin password, and you chose to use "p@ssw*rd". Let's further suppose that you've been networking with your friend for two hours and you've made a really nice picture, but you're not done with it. Now imagine that your roommate just informed you that his car broke down and he needs you to give him a ride to work NOW, n-o-w. What do you do? Assuming you're nice enough to give him a ride, you have three options: -ditch the session, save the event file and try to be happy with the end result even though you wanted to do a lot more -leave both computers on, NSoSC running, both oC programs connected, and hope that nothing happens while you're gone -/save the session file, shut your computer safely down if you wish, and tell your networking friend not to worry because you can /restore the network session at any time. I don't know about you, but I like option #3; that's why I got NSoCS in the first place. The lure of being able to restore a session was so strong that I overcame my fear of confusinglooking little programs with no GUI and fooled around until I saw that NSoCS could indeed restore an interrupted network session. However, to be honest, I didn't know that NSoCS could save a session and then restore it even after everything had been disconnected and shut down, and the only reason I found out was that I was writing this tutorial and wanted to make sure I'd Page 39 of 48

covered everything NSoCS could do. Yep, it pays to read the ReadMe file carefully. Anyways, you'd probably like to know how to save and restore said interrupted network sessions. Here's how. Make sure you've set an admin password, and that it doesn't have any uppercase letters.

During your oC networking session, type /admin [password] to make it possible for you to execute admin commands (such as save/restore). Now you may at any time type /save [filename]. No filename extension is necessary. If you just type /save without specifying a filename, NSoCS will save a file named something like ec_02-222010_18-30-15.dat. That's going to be hard to type when you want to /restore it.

Page 40 of 48

Okay. So NSoCS saved the session file. You may now close oC without saving an event file, turn off NSoCS, shut down your computer if you wish, and walk away. You can still restore your networking session.

To restore an interrupted session, connect oC to NSoSC as before, login as admin remember, /admin [password] and type /restore [filename].

Page 41 of 48

That's all there is to it. Wait for everything to replay, and then you can continue drawing together. Pretty cool, huh? You can even use this with a different networking buddy than you had the day before; the session will still restore, and you can continue working on it. Page 42 of 48

Command List
Here's a list of NSoCS admin commands and what they do:

/admin [password]
This logs you in as admin and lets you perform the following admin-only commands. Typing /admin with no password will log you out of admin mode [but not out of the oC session].

/kick [username]
What it says; kicks out a user. Unfortunately, it doesn't seem to work if they have any Uppercase letters in their handle!

/ban [username]
See above, only it bans them based on their IP address.

/save [filename]
This is my favorite command! Saves your session to disk so you can restore it later, even if you disconnect everything and shut it down. You need to be logged in as admin i.e. type /admin Page 43 of 48

[password] in oC's chat window to do this. Make sure to specify a filename and make the filename something that's easy to type; otherwise NSoCS will give it a complicated date/time-based name and you can have lots of fun typing it when you try to restore.

/restore [filename]
My other favorite command! This restores the session you previously saved. You need to be logged in as admin /admin [password] to do this.

/clearall [password]
This clears everything recovery data and the canvas and starts over. Nice if you want to draw another picture without closing/restarting NSoCS. It wont work without the password. Note: When you send admin commands, other users don't see them... as far as I can tell...

Extended Mode Commands (any user):


/who
Displays a list of everyone currently connected.

/lockstatus
Shows which layers are locked or unlocked. Layers start counting at 1 from the bottom.

Page 44 of 48

/lock [#]
Use by itself to lock the active layer. Use with a number to lock that particular layer.

/unlock
By itself, unlocks the active layer.

/unlock [#]
This will unlock the specified layer.

/unlock all
What it says: Unlocks all locked layers.

So! I hope NSoCS can make your networking experience better than it currently is. If it does, consider emailing the author and telling him Thanks. =] It sounds like he's super busy these days so NSoCS may not get any upgrades or fixes, but it's quite helpful just the way it is if you don't mind working with its little quirks and non-existent GUI. Collaborate on! Page 45 of 48

Feel free to contact me: extremeclipper@yahoo.com my website my deviantArt account

Page 46 of 48

Other openCanvas resources: download openCanvas 1.1 Introduction to openCanvas 1.1 OpenCanvas, Version 1.1: An Online Guide Painting in openCanvas 1.1: part 1 and part 2 portalGraphics website openCanvas at portalGraphics openCanvasUser Group on deviantArt for more tutorials and resources. Hamachi resources: Download Hamachi Configuring your firewall to work with Hamachi Getting NSoCS: NSoCS Website

Page 47 of 48

Bye bye for real now! Tripleguess April 1, 2010

Page 48 of 48