Stephen St. John, Esq.; Accomplished solicitor/lawyer. A dapper dresser and impeccable orator. Is willing to take on cases no one else would touch, partly out of pride and… well, no, entirely out of pride. Helped save the Adams store from lawsuits intended to keep Adams from inheriting it.
Vincent Adams; Orphaned son of gun store owner, inherited the shop and all the weapon stock and the clientele, both legal and illegal. Always looking for extra cash, and a way to test out his newest weapons. Owes St. John for his livelihood, and will help him at the drop of a hat.
“Lady” Jane Simpson; Privileged dilettante, thrill seeker, trust fund child. Slumming it at the moment in nearby Miskatonic. Parents are professional peers of St. John, and she met Adams through their mutual association. Yawns a lot.
I’ll be making minor changes as time allows, but it’s nearly done. All I have to add as of now will be descriptions of what Occupation you’ve chosen, and for the point pool to change if you assign skill points to a skill. Right now it just shows you what points you have available in total, and doesn’t change even if you change your skills.
Keep in mind that your characters will need to have a somewhat cohesive storyline about how they came together and how they know each other from the past. It’s possible that four strangers wandered into a room at the same time while someone was describing a job they want done, but that just isn’t very likely. Maybe the group is a separate set of specialists called in on their first job together. Or possibly one or two of the characters know each other from military service or from their schooldays.
Regardless, something has drawn your character to the paranormal. Something has made your character interested in the occult and metaphysics. Whether they’re skeptical and scientific and want to debunk myths they find childish, or whether they’re obsessive cultists, that’s up to you. But some sort of backstory makes the game more fun and makes the character more lifelike.
If you have somewhat confusing attributes that don’t please you you can do a few things.
Accept it, and realize that not everybody is easy to understand and that your character is complex and mysterious. Like the Green Power Ranger.
Shuffle the scores, but don’t change the scores. Such as, swap Appearance with Education. That’s a tradeoff we’ve all made in our lives.
Re allocate the total points, but never exceed the possible rolled scores of each attribute.
Do this only with the primary attributes, obviously. As the secondary are all dependent on primary.
Character yearly income is determined by a die roll, just like basically anything else in the game. It also determines what assets this character has saved.
For a 1920s game, the result of a 1D10 roll assigns the income. I’ve put in parenthesis what hourly wage this would be roughly equivalent to in 2013 dollars. It’s a very rough estimate, but it helps you conceptualize the financial situation of the character.
$1500 + room & board ($7)
(also) $3500 ($17)
Total assets in holding for a character are determined as 5 times yearly salary, and one tenth of that is available banked as cash (immediately available by visiting local bank). Another tenth of that is in investments available with 30 days notice.
Let’s say you rolled a 5, setting your income at $4500. That would mean your total character’s worth would be $22500. With one tenth ($2250) in the bank and another tenth ($2250) available as stock options, your character has a remaining $18000 in assets. These are held as a house, or a barge, or a coin collection or whatever, and is generally unattainable within a single mission’s time, unless your character is remarkably good at some sort of wheeling and dealing. (Accounting, fast talk or some such)
Education has a direct bearing on age in CoC. The more education you have, the older you have to be. Whether this requirement comes as a side effect of having gone to med-school, or whether it’s because your character has had to live on the streets for years and learned how to bottle his own pickles using his own fluids, that tidbit is up to you. But to determine age you follow the formula as such:
Minimum age for character is EDU + 6 Years. This will generally not even put you above 20 years old at a minimum.
However, you can increase your character’s age at creation as a tradeoff. For every 10 years you age your character, you gain another point of EDU, adding 20 more occupation points to your pool. But once you pass 40, this takes a toll on the body, and for every 10 years above 40 you push your character, you must subtract one point from either STR, CON, DEX or APP. (Your face gets liver spots or something)
Having a high skilled, disgusting looking 80 year old character could be delightful.
Turns out CoC Character creation follows a very few simple ruleset which you can download here.
A character can be boiled down to a few certain attributes, which that PDF will go over, just like most RPGs. And also like most RPGs those attributes will be instantly familiar to you, and generally you can infer what each will mean.
The majority of these attributes are created randomly during character creation. The remaining attributes are created based off of those random assignments.
As you work your way through the character creation, you will fill out the last few pages of this PDF document.
Major influencers of gameplay. Set to determine how smart, fast, resourceful, strong, or SEXAY your character is.
These are generally influenced by the primary attributes, but are used commonly during the game process to determine if you’re about to die.
Occupation and Skills
Once you see how your character is fleshing out, you can decide on an occupation that would make sense for the character. For example, an moderately intelligent, highly educated, good looking character could be a businessman that’s got by on his looks and credentials. Or a character that is huge, slow, but incredibly lucky could be the rich lazy son of a English Duke. A dilettante of sorts. Those same attributes with low luck you could make a dock worker. And so on.
Once you choose the occupation, you can pick from the list of occupation skills that are in the skills list of the Character Sheet. You assign percentage points to those skills that fit within the character’s backstory and occupation. You wouldn’t normally assign the dock worker any accounting skill points, but maybe his spot hidden would be highly refined due to working around dangerous equipment. You determine the pool of points for those skills based on your EDU (education) point total multiplied by 20. For example, if you had 15 EDU, you would have a starting point pool of 300. You could then assign those points to each skill as you see fit. However, no skill type can be greater than 75. Also,the Cthulhu Mythos (knowledge of the ancient gods and monsters that lurk in the universe) should not be increased, since the characters we’re creating have not yet encountered such terrible tentacled beasts. Yet. That’s what we’re going to put them through during our adventures. You’ll see your characters grow in Mythos knowledge, and likely in insanity and sweaty palms.
For hobby skills, you take your INT score, and multiply it by 10. That pool can now be used and assigned to skills in the same manner as occupation skills, except do not need to be limited by the occupation and background you’ve chosen.
Apache is remarkably easy to get running. It is all governed by the service daemon “httpd” and can be installed easily with a yum or apt-get install command if it didn’t come packaged with your distribution. Any repository that was preinstalled should have it easily available. The yum command in CentOS would be:
yum install httpd
The configuration file is easy to edit with the command:
Almost everything you could need for a simple webserver is already set up for you, and already configured. The two simplest edits you can change would be the port(s) Apache listens on and the DocumentRoot setting that tells the service what local directory on the server itself will act as the root directory for web pages.
You can change it from listening from port 80 to any other valid TCP port by finding the line that says “Listen 80″ and changing it to “Listen <xxx>” where <xxx> would just be whatever port you want to try. If you wanted port 3005 you would change the line to say, “Listen 3005″ and save the file.
Just as a side note for alternate ports, the assumed port for http url browsing is port 80. It’s implied in all standard browsers that when you access a url or an ip of a webserver that it is to be done over port 80, unless directly told otherwise. The method for accessing a url or ip over a specific port is to enter the url/ip like so http://<ip_or_url>:<port>
For example, accessing your loopback ip over port 3005 would work as such in a browser:
This will access your DocumentRoot folder on the webserver, and will normally allow you to access any file inside that directory that the Apache service has access to. The browser used to access the file will in large measure determine how that file is accessed.
DocumentRoot configuration is just as simple. The default directory for CentOS is /var/www/html but you may want to change that for whatever reason. It’s easy to change that by doing the same vim command as above and changing the line that starts with DocumentRoot “/var/www/html” to use whatever directory you prefer that Apache has access to.
For example, if you wanted Apache to access /home/myuser/webfiles you would change the line to look like so:
Any time you make a change to the http.conf file and you want to see its effects, you’ll need to restart the httpd service like so:
service httpd restart
Once the service is restarted, you should see any changes immediately when you access it from a browser.
After some research it became pretty clear that getting SSL to work with a private key would be simple. You must make sure that openssl is installed, and yum installing it should do everything required to get that working.
# Generate private key
openssl genrsa -out ca.key 1024
# Copy the files to the correct locations
cp ca.crt /etc/pki/tls/certs
cp ca.key /etc/pki/tls/private/ca.key
cp ca.csr /etc/pki/tls/private/ca.csr
Then you have to tell Apache to use the new keys by editting the ssl.conf file.
vi +/SSLCertificateFile /etc/httpd/conf.d/ssl.conf
Add in lines:
Once the correct SSL Certificates were installed, and the Apache service was restarted, the SSL kicked in. Using a browser to access OwnCloud over https just started working. All you have to do is accept the untrusted certificate when accessing the page. Once you tell your client to accept using that key, all functionality of the site will now operate the same, but will now use https, including downloading files through encrypted means.
The trouble, however, is that it is a private key, and therefore is automatically not trusted. In order for any windows OwnCloud client to work, it has to be a trusted certificate.
The easiest way to trust a certificate in windows is to open Internet Explorer to the https url and click on the “Continue to webpage” option. Once it’s using that certificate, it will say something along the lines of “Certificate Error” in the URL line. Click on that, and it should allow you to “View Certificates” from which you can install the certificate and place it into a specific “store” called something along the lines of “Trusted Root Certificate Authorities” which will basically allow any kind of SSL communication using that certificate.
Once that’s installed on the windows client as a trusted certificate, the windows OwnCloud client was able to sync with the https URL.
OwnCloud is a DropBox-type file-sync system that is open source and free for use.
Implementing OwnCloud was troublesome for me at first, as it had moments where it was easy as pie, and moments where I lost the will to continue living in a world where I couldn’t control my own Linux machine.
The initial setup was fairly simple. Getting the OwnCloud tar package and dropping it into the Apache DocumentRoot was simple enough. Then I had to give Apache permissions for it with the ‘chown -r apache: /apache/document/root/owncloud’ command.
The PHP pages guide you the rest of the way, and with the newest version of OwnCloud handles everything with SQLite instead of giving you any options, which actually makes things easier
The problem came with me trying to fiddle with settings of OwnCloud once I had it installed.
For example, on my first installation attempt, I hadn’t really hammered out where I was planning on storing the files uploaded through OwnCloud, assuming that I could change it later. When I attempted to switch that file location later through some mild config changing, the world collapsed in on itself and I suddenly could no longer log into the OwnCloud admin interface at all.
Despite my attempts to drop any SQLite tables associated with OwnCloud, I actually was not able to get OwnCloud working again until I reinstalled the operating system and started from scratch. There may be tools associated with OwnCloud that can do this easily, but it was a serious keyboard pounding moment for me.
Owncloud is limited in its file size capabilities by your system’s PHP configuration. You can change that configuration by editing the /etc/php.ini file and editing the upload_max_filesize and post_max_size variables to a larger size. These are both usually limited to 10 megabytes and will usually show up as two separate lines like so:
upload_max_filesize = 10M
post_max_size = 10M
You should change these to be the maximum size that you expect for files that you will be syncing. If you wanted to change it to one gigabyte limit you would use 1G instead of the 10M. I arbitrarily set these to 4 gigabytes, and have had no issues with syncing xvid video files or other semi-large files.
Once that was complete, however, syncing directories with windows clients has been a snap. The only other issue I had was getting everything working over SSL…
Rolling out WordPress was actually the last of the administrative acts I have accomplished on this server, and it was by far the easiest of the implementations. I feel sheepish even calling it an implementation. It was almost embarrassingly easy to get it up and running. I downloaded the latest version of WordPress from the WordPress download sections into my /usr/src directory. This I did with:
After it completed its download, I untarred it, then copied it in its entirety to my apache document root directory.
tar xvf latest.tar.gz
cp -r wordpress /my/apache/documentroot/
Then, I gave apache ownership of the whole directory with:
chown -R apache: /my/apache/documentroot/wordpress
Then opening up a web browser to the WordPress index I followed the install methods.
But wait, a snag! Mysqld wasn’t working! WordPress alerted me to the fact that my PHP installation didn’t have the proper Mysql integration! Oh no! All is lost, and life is meaningless!
Except, all that was required, as I already had PHP installed was to make sure that the php-mysql package was installed. The CentOS community repos make this available as a yum install. So I went ahead an did that with:
yum install php-mysql
After getting php-mysql installed, WordPress held my hand the rest of the way, and it was up and running within seconds. It was remarkable. Bless open source web development and the heroes that keep it moving forward. Bless them one and all.
I’ve seldom blogged about anything on a regular basis with any kind of regularity or otherwise. This is in large measure just an exercise in web administration. My writing skills and ability to ENTICE and EXCITE are both rancidly rotten and ignored to the point of being rusted to complete impotent dullness.
However, I enjoy attempting new administration and the rolling out of PHP stuff. It’s absurd how easy it gets after a little while. PHP and Mysql combined has made things remarkably modular in website administration, and yet rolling out a wordpress or a wiki is always exciting to me, and somehow still gives me a sense of accomplishment, regardless of how easy the developers have made it.. I can always count on the chance of something going slightly wrong, and somehow making me feel intelligent for getting around it. Even though it is usually as something as silly as a service not running on the webserver.
I’m going to document each of my attempts for web administration, and to the best of my ability enumerate my mistakes in the hopes it will help you avoid the same pitfalls.