This log demonstrates several of the features of +svc. It is a walkthrough
of creating a project, committing changes, and creating a local copy.


> @create Dice Roller
Created: Object #9006.
> @desc Dice Roller=A simple dice roller. Use "roll <num>d<sides>" to roll the
dice.
> &roll dice=$roll *d*:@emit %n rolls %0d%1: [die(%0,%1)]
> ex dice roller
> @set dice=no_command
Dice Roller - NO_COMMAND reset.
Dice Roller(#9006Tn)
Type: THING Flags:
A simple dice roller. Use "roll <num>d<sides>" to roll the dice.
Owner: Fili(#11442PQenAC)  Zone: *NOTHING*  Ducats: 10
Parent: *NOTHING*
Powers: 
Warnings checked: 
Created: Tue Dec 09 17:00:11 2008
Last Modification: Tue Dec 09 17:01:53 2008
ROLL [#11442]: $roll *d*:@emit %n rolls %0d%1: [die(%0,%1)]
Home: Linux Lobby(#12RnJ)
Location: Fili(#11442PQenAC)
> +svc help init
SVC:   +svc init <projectname> <password>

  <projectname> - The name of the project. Only letters, numbers, . and _ may
be used.
  <password> - A single word, no spaces, the project password. Anybody who has
this password can commit changes to the project.

  IMPORTANT - Please see "+svc help policy" for the naming policy on projects.
> +svc init test_Roller potato
SVC:   Attempting to initialize GIT repository . . .
SVC-Bot: Checking if exists
SVC-Bot: Attempting to initialize project . . .
SVC-Bot: Committed!
SVC-Bot: ... Completed!
> +svc create rollerSVC=test_Roller potato
SVC:   New client created. You should now do a "+svc update"
> +svc update
SVC:   Attempting an update, please wait. . .
SVC-Bot: Checking for update . . .
SVC-Bot: No checkout has been created. Doing a checkout instead.
SVC-Bot: Checking for checkout . . .
SVC-Bot: Syncing version 0 to 1.
SVC-Bot: Reverting server copy to master.
SVC-Bot: Sending objects . . .
SVC-Bot: Attempting to set objects.
SVC-Bot: Checkout complete. (I hope!)
> +svc add Dice Roller
SVC Client 'rollerSVC':  Added Thing: Dice Roller
> +svc diff
SVC-Bot: Preparing for diff . . .
SVC-Bot: Pulling a diff (This may take a while).
! DESCRIPTION: Project Description
SVC-Bot: Added new object: Dice Roller
  + Dice Roller: 
  + FLAGS: 
  + LOC: owner
  + ATTR:DESCRIBE: A simple dice roller. Use "roll <num>d<sides>" to roll the
dice.
  + AFLAGS:DESCRIBE: no_command visual prefixmatch public nearby
  + ATTR:ROLL: $roll *d*:@emit %n rolls %0d%1: [die(%0,%1)]
> +svc describe A simple dice roller test project for demoing SVC.
Description for 'rollerSVC' set to: A simple dice roller test project for
demoing SVC.
> +svc readme Don't bother using this, it's just for a demo =.)
Readme for 'rollerSVC' set to: Don't bother using this, it's just for a demo
=).
> +svc diff
SVC-Bot: Preparing for diff . . .
SVC-Bot: Pulling a diff (This may take a while).
! DESCRIPTION: ProjectA Descriptionsimple dice roller test project for demoing
SVC.
! README: ReadmeDon't bother using this\, it's just for a demo =\).
SVC-Bot: Added new object: Dice Roller
  + Dice Roller: 
  + FLAGS: 
  + LOC: owner
  + ATTR:DESCRIBE: A simple dice roller. Use "roll <num>d<sides>" to roll the
dice.
  + AFLAGS:DESCRIBE: no_command visual prefixmatch public nearby
  + ATTR:ROLL: $roll *d*:@emit %n rolls %0d%1: [die(%0,%1)]
> +svc commit Initial Dice Rolling Commit.
SVC:   Attempting a commit, please wait. . .
SVC-Bot: Pulling a diff (This may take a while).
SVC-Bot: Committed!
SVC-Bot: Version 2 committed!
> &roll dice=$roll *d*:@assert cand(gte(%0,1),lte(%0,10))=@pemit %#=Number of
dice must be between 1 and 10. ; @assert cand(gte(%1,2),lte(%1,100))=@pemit
%#=Number of sides must be between 2 and 100. ; @emit %n rolls %0d%1:
[die(%0,%1)]
Dice Roller/ROLL - Set.
> roll 0d50
Number of dice must be between 1 and 10.
> roll 1d100
Fili rolls 1d100: 54
> roll 1d101
Number of sides must be between 2 and 100.
> +svc diff
SVC-Bot: Preparing for diff . . .
SVC-Bot: Pulling a diff (This may take a while).
SVC-Bot: Changed object: Dice Roller
  ! ATTR:ROLL: $roll *d*:@assert cand(gte(%0,1),lte(%0,10))=@pemit %#=Number
of dice must be between 1 and 10. ; @assert cand(gte(%1,2),lte(%1,100))=@pemit
%#=Number of sides must be between 2 and 100. ; @emit %n rolls %0d%1:
[die(%0,%1)]
> +svc commit Adding asserts for the dice count and sides.
SVC:   Attempting a commit, please wait. . .
SVC-Bot: Pulling a diff (This may take a while).
SVC-Bot: Committed!
SVC-Bot: Version 3 committed!
> +svc info testRoller
SVC-Bot: No such project 'testRoller'
> +svc info test_Roller
SVC-Bot: Project info for test_Roller version 3
 
Description: A simple dice roller test project for demoing SVC.
 
Readme: Don't bother using this, it's just for a demo =).


Now @nuking the dice roller and local checkout, so I can re-check them out from
the server as a new copy.


> @nuke dice roller
Dice Roller(#9006T) is scheduled to be destroyed.
> @nuke dice roller
You get your 10 Ducats deposit back for Dice Roller(#9006TG).
Halted: Dice Roller(#9006).
Destroyed.
> @nuke rollerSVC
rollerSVC(#9004Tn) is scheduled to be destroyed.
> @nuke rollerSVC
You get your 10 Ducats deposit back for rollerSVC(#9004TGn).
Halted: rollerSVC(#9004).
Destroyed.
> +svc create myRoller=test_Roller potato
SVC:   New client created. You should now do a "+svc update"
> +svc update
SVC:   Attempting an update, please wait. . .
SVC-Bot: Checking for update . . .
SVC-Bot: No checkout has been created. Doing a checkout instead.
SVC-Bot: Checking for checkout . . .
SVC-Bot: Syncing version 0 to 3.
SVC-Bot: Reverting server copy to master.
SVC-Bot: Sending objects . . .
SVC-Bot: Attempting to set objects.
SVC-Bot: Sending object Tf4c91946473f058ba4f0 ...
SVC-Bot: Sent object Tf4c91946473f058ba4f0.
SVC-Bot: Checkout complete. (I hope!)
> empty myRoller
You take Dice Roller from myRoller.
You remove 1 object from myRoller.
> ex dice roller
Dice Roller(#9006T)
Type: THING Flags: 
A simple dice roller. Use "roll <num>d<sides>" to roll the dice.
Owner: Fili(#11442PenAC)  Zone: *NOTHING*  Ducats: 10
Parent: *NOTHING*
Powers: 
Warnings checked: 
Created: Tue Dec 09 17:17:05 2008
Last Modification: Tue Dec 09 17:17:06 2008
ROLL [#11442]: $roll *d*:@assert cand(gte(%0,1),lte(%0,10))=@pemit %#=Number
of dice must be between 1 and 10. ; @assert cand(gte(%1,2),lte(%1,100))=@pemit
%#=Number of sides must be between 2 and 100. ; @emit %n rolls %0d%1:
[die(%0,%1)]
Home: Master Room
Location: Fili(#11442PenAC)
> roll 5d50
Fili rolls 5d50: 179
> roll 0d0
Number of dice must be between 1 and 10.
> @desc Dice Roller=A simple dice roller. Use "roll <num>d<sides>" to roll the
dice. <num> must be between 1 and 10, and <sides> must be between 2 and 100.
Dice Roller/DESCRIBE - Set.
> +svc diff
SVC-Bot: Preparing for diff . . .
SVC-Bot: Pulling a diff (This may take a while).
SVC-Bot: Changed object: Dice Roller
  ! ATTR:DESCRIBE: A simple dice roller. Use "roll <num>d<sides>" to roll
the dice. <num> must be between 1 and 10, and <sides> must be between 2
and 100.
Dice Roller(#9006T)
A simple dice roller. Use "roll <num>d<sides>" to roll the dice. <num> must be
between 1 and 10, and <sides> must be between 2 and 100.
> +svc commit Updating @desc
SVC:   Attempting a commit, please wait. . .
SVC-Bot: Pulling a diff (This may take a while).
SVC-Bot: Committed!
SVC-Bot: Version 4 committed!