Sweet Kobold Jesus!

Monday, February 27, 2012
We’ve been running a 4th edition feywild campaign at home. Our party is a traveling circus troupe that performs outlandish shows for the various fey kingdoms and courts. As one would expect from any circus, the characters that make up the party are an odd group of professional misfits. We have an  unscrupulous Changeling ringmaster, a distinctly Russian Dwarf who doubles as strongman and Displacer beast tamer, a sadistic fairy illusionist, a Goliath bearded woman (who primarily performs burlesque acts), a perpetually drunk and indignant Satyr Bard, a Drow ranger with questionable aim, and a vampiric fairy who acts as our stage and prop manager.

Needless to say, this band of ruffians makes a planned game very difficult at the best of times, and nearly impossible at the worst. The sessions we have tend to become at least half-improvised, but usually follow the basic arc I’d set up for the night. This last game however… well, it just didn’t.

It started with a Brownie. Our troupe was travelling through the forests, on their way to the Goblin Kingdom, when they came across a Brownie crying by the side of the road. The Brownie, who had had his most prized possession taken from him, told the group tearfully that they should kill him to free him from his misery. Rather than ask him what was wrong, our strongman obliged the poor fey fellow and crushed him like a grape. Yes, five minutes in, and the group has literally crushed their first story hook.

The rest of the game was a mess. I hadn’t prepared for this sort of thing. I spent the majority of the evening trying to recover from the initial derailment, only to further the destruction and chaos.
The party ended up in a Kobold village, the biggest damn Deus ex Machina I could come up with. Already on the trail of the Unicorn lost by the Brownie, and stomachs full of magical Unicorn poop (my amazing wife actually made Unicorn poop cookies especially for the evening’s game) the group was growing bored and toying with the idea of moving on.

The Kobolds arrived just in time to capture our heroes and force them to help recover their stolen livestock from the very same bunch of miscreants that stole the Unicorn. Right? Of course not. Rather than go peacefully after realizing they are outnumbered, the Illusionist manages to transform our dwarf into nothing short of Kobold Christ.

So, the group strode into town like an apostolic A-Team. The Kobolds went crazy; their messiah had come and they didn’t even know they had one. The shaman was summoned, and a feast was declared. The party was given sacred hallucinogenic mushrooms (meringue mushrooms, again prepared by my super awesome and incredible wife) that were a part of the original arc, though not meant to be encountered in this fashion. 

The feast devolved into absolute chaos, mass hallucinations and debauchery. The Ringmaster became addicted to the mushrooms, traded the party’s circus gear for the village’s supply of them and swore that he was the father of a very large egg.  There were bribes, blackmail, kobold on changeling action, and several utterances of “never again.” Then the party set out to find the Unicorn and the livestock.

In the end, the troupe managed to recover their gear, defeat the baddies and gain a Unicorn for the show. They never bothered to bring the livestock back to the Kobolds.

The best thing to remember in moment’s like this is that a larger campaign, even one that’s more silly than serious needs to have some kind of ultimate goal. This is not to say that a campaign must stay wholly true to that goal in every session. Any RPG worth playing has sidequests. You might have had a character that embarked on an important task separate from the main story. Your party may have been distracted by a dragon, a noble or a story about an item. All these things are fine.

It’s when a group gets bored that you see things like our last session. They didn’t want to have anything to do with the brownie or the kobolds. They wanted to get to the goal we had already set. They knew where they were going and they were ready to play the Goblin Kingdom. I led them away from their goal despite the expectation that it was imminent. Although the group did enjoy the game, they were ultimately unsatisfied. The game filled time, not story. 

A bored group is a group on the edge. I’m lucky the group managed to have so much fun with session. It could have been much worse. Always foster your group when they have their eye on the prize. Never punish a group for being on task.

Ah, the Power of Linux!

Thursday, February 2, 2012
So, as a little back story, I am in an Applied Security Concepts class for computers.  In this class, we learn how various attacks work by performing them so that we know how to better defend against them.  The way that we do this, is that we have a computer lab that is built to run multiple virtual networks (completely severed from the Internet) that run with however many virtual machines we need for any given situation.

To be blunt, if we need a new program on these virtual systems, it is a pain, we need to run the virtual system on a VMWare Player, install the program, and then upload the newly changed program onto the network.  And if you want a text file, you must import it as an image, onto each machine MANUALLY.

I have learned something completely awesome that has helped make this task infinitely easier.  Every time I deploy a network of various OSs which I mean to destroy or utilize to destroy the others, I always deploy a CentOS machine.  Why?  It's simple, on CentOS I can build a Samba server for that particular network so that we only need to upload an image with a file once.  Why Samba?  Samba is an server system that allows you to host and serve files from a Linux system to Windows computers.

In other words, instead of adding the files machine by machine, I put the files on CentOS in my server file, from there, all I need to do on the other machines is type in the IP of the CentOS machine (which is easily found under either eth0 or eth1, whichever you have, after inet addr:  when you type in "ifconfig" in the terminal), and voila!  It takes me to the server and I can grab the files and run them back in forth should I feel the need to compile something without having to go through the tedious process of installing MinGW and uploading a new virtual machine.

This is my simple barebones guide, this server will have little security.  Also, as much as I wish I was, I am not a Linux guru, so the IP address in the iptables portion will have to be manually put in unless you know a way in which to grab the current IP address as a variable and put it in that way.  If you do, please let me know how!

From Scratch

Install Samba:

#yum install samba

Change Firewall Specifications to Allow Use of Proper Ports:

in /etc/sysconfig/iptables add these lines of code:

-A INPUT -s serveripaddress/24 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A INPUT -s serveripaddress/24 -m state --state NEW -m udp -p udp --dport 445 -j ACCEPT
-A INPUT -s serveripaddress/24 -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A INPUT -s serveripaddress/24 -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
-A INPUT -s serveripaddress/24 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT

Restart iptables:

#service iptables restart

Change Start Up Configuration to Start Samba Automatically:

#chkconfig smb on
#service smb start

Create Group:

#groupadd -g 10000 groupname

Make Directory that Hosts Samba Share:

#mkdir /home/sharename

Work Around SELinux:

#chcon -t samba_share_t /home/sharename

smb.conf File and Edit file with New Definitions:

  #vi /etc/samba/smb.conf

Add these parameters and edit them according to your needs I believe global exists already though:

[global]
workgroup = WORKGROUP
server string = samba
security = user/share/domain
passdb backend = tdbsam
load printers = no

[sharename]
comment = comments about share
path = /home/sharename
valid users = (add each with a space)
writable = yes
public = no

test these new definitions for errors:

#testparm


Restart smb Service to Ensure Changes Are Saved:

#service smb restart

Adding Users:

#useradd -G groupname -u 1000(<--this is the user id, make it unique!) -M -s /sbin/nologin username
#passwd username
type in new password as directions show

create samba account:

#smbpasswd -a username
type in new password

confirm the user was added:
pdbedit -w -L

Log in by going to windows directory page and typing in server ip address



REFERENCES

http://aaronwalrath.wordpress.com/2011/03/26/install-samba-server-on-red-hat-enterprise-linux-6scientific-linux-6/

http://wiki.centos.org/HowTos/SetUpSamba

http://www.centos.org/docs/5/html/Deployment_Guide-en-US