Issue 2: All Your Base...

Started by Codewalker, July 27, 2018, 11:54:22 PM

Codewalker

https://chat.cohtitan.com/paragonchat.png
Paragon Chat 1.1

Issue 2: All Your Base...

Welcome to the Paragon Chat 1.1 series! We're calling this the "all your base" update for hopefully obvious reasons -- the much awaited introduction of base editing to Paragon Chat.

If you're already running Paragon Chat, you don't need to do anything special; just let the auto-updater do its thing. If you're new to the program, you can use the link below to download the installer. 1.1 continues the 1.0 series tradition of being completely self-contained and not reliant on any kind of registry keys or other machine-specific 'magic'. If you don't like where Paragon Chat is installed, you can simply move the whole thing somewhere else and it will just work.

Download

There are some big new features in this update that need some extra documentation that doesn't quite fit into the usual patch notes.

Bases

The first step here is to unlearn some assumptions. When people think 'bases' in COH, they inevitably think of 'Supergroup Bases', as bases always belonged to a Supergroup. Paragon Chat doesn't have Supergroups, so bases here are not associated with SGs at all.

Instead, Paragon Chat has personal bases and account-wide bases. A personal base belongs to a single character. It is accessible from the portal only for that character, and if you delete the character, the base goes with it. Think of it like the "personal apartment" feature that people often asked the rednames for. An account-wide base is shared between all of the characters on an account. Unlike the live game, you can have as many bases as you want!

Both types of bases are stored in the Paragon Chat local database file and not on the XMPP server. If you use Paragon Chat on multiple computers, you'll have to copy or otherwise keep the database synchronized to access your bases, much as you already have to do for your characters. Because so much work goes into creating bases, backups are important, but more on that later.

Creating a base

To get started, you first have to create a base. The Supergroup Registrar has been co-opted for this function, and instead of allowing you to form a Supergroup, is used to create and manage bases.

You can find SG registrars in City Hall in Atlas Park, the Freedom Corps building in Galaxy City, and in Marconeville in Port Oakes.

When you create a base, you'll be asked a series of questions. The first is the base type - personal or account-wide, as discussed earlier. You'll also select the base level. As of this release, the only available level is "Issue 24", which aims to reproduce the live game's base-building experience as closely as possible, with the exception of prestige farming. Building bases in Paragon Chat will always be a free and unlimited creative exercise.

Visiting a base

What fun would creating a base be if you always had to be alone in it? Paragon Chat supports visiting bases of your friends and using them as places to hang out together. There are a few requirements to enter someone else's base:
  • The base must be enabled for teammate access. This is on by default, but you can turn it off using the access control settings available at the SG Registrar. Look under the 'Modify a base' option.

  • You must be on a team together.

  • At least one player on the team must be inside the base. Usually this will be the player who created the base, but doesn't necessarily have to be.
It's important to note that these requirements only apply for entering a base. Once you're in, you're in. You can drop team, the player whose base it is can log out, and you can stay there. You can even invite someone else and they'll be able to join you on the base you're visiting.

Exchanging bases

If you've built a cool base and want to give a friend a copy they can edit, or contribute it to the community to use as a starting point for their own bases, Paragon Chat supports a convenient file format for this purpose. While you're inside your base, use this slash command:

/basesave filename

That will create a "filename.pcbase" file inside the Bases subfolder of your Paragon Chat install. You can give this file to a friend offline, and they can import it and load it as their own. The SG Registrar performs base imports.

This kind of base sharing is even easier if you're both online. Your friend can visit your base, use /basesave to save it to a file, then go to the registrar and import an editable copy.

If you're a builder working on a big project and worried about visitors saving it and claiming it as their own, or just generally a private person, the SG Registrar also allows you to disable sharing of a particular base. This is under the access control menu, and turning this off will prevent someone who is visiting your base from saving it to a file. Note that it will also disable the functionality for someone else to record demos while in your base.

Loading archived bases

Before the game shut down, one bit of information we tried to get around as much as possible was advising people to demorecord their SG bases. Paragon Chat can import these demos to recover a base that was lost in the shutdown, so long as you have a demo that was recorded inside it.

To use this feature, copy the .cohdemo with the base to [ParagonChat]\Client\Demos, then talk to the SG Registrar and use the base import option.

Differences from the live game

Due to the nature of Paragon Chat, there are a few other differences.

As mentioned above, there is no prestige cost. The 'costs' listed in the item picker can simply be ignored.

Paragon Chat does not have any kind of crafting, so base items that were crafted from salvage, such as teleporters and many defense items, have been moved to the normal item picker tabs.

Items of Power (from the defunct base raids) can be placed directly, but still must be put in a vault room.

You cannot edit the base while other players are present.

Known issues

Power and Control are not yet implemented. All items default to the 'powered' state. The plan is for the power and control minigame to be active for the 'Issue 24' base level, and optional if the base is upgraded to the (not yet implemented) 'Relaxed' base level.

Functional items do not work. While most of them don't make sense in the context of Paragon Chat, Teleporters are one functional item that is planned to be supported in the near future.

Backups

Another common misconception about Paragon Chat is where data such as characters are stored. Many people assume that it's stored on the "server", but since Paragon Chat's "server" is local to your computer and the XMPP server is just used as a chat relay, this mistaken impression can sometimes lead to data loss.

To make it easier for users to safeguard the work they put into character designs and bases, Paragon Chat 1.1 introduces a built-in backup system.

Setting a backup location

The default location for backups is a 'Backups' subfolder under the Paragon Chat install. While this respects the portable nature of the application, it's not a particularly safe place to keep backups long term.

This location can be changed from the options panel - accessed by the gear icon on the Paragon Chat login window. Users are encouraged to place the backups inside a folder that is backed up to an external device, or synchronized with a cloud storage provider (Dropbox, OneDrive, etc).

What gets backed up

By default, Paragon Chat backs up three things:

  • The database. This contains everything the program uses, all characters with their badges, tray settings, holiday temp powers, etc. The database is backed up once per day, and older copies are rotated according to a schedule. For more detail, see the advanced settings section.

    Occasionally, the database schema is changed from one version of Paragon Chat to the next. Normally, these database upgrades are done transparently. The backup system makes a special backup of the database before performing a schema upgrade, just in case.

  • Costumes are backed up for every character you log into, and the backups are updated when you edit costumes. These backups are saved as standard .costume files that can be loaded into the costume editor by copying them to the correct location.

  • Bases are backed up as .pcbase files. These backups are made every time you exit the editor after making changes.

Advanced backup settings

The backup system comes preconfigured with settings that are appropriate for most users, but advanced users that want finer control over it can tweak the behavior. The following settings can be changed by opening Config\ParagonChat.cfg in a text editor while Paragon Chat is not running and adding new entries to the [ParagonChat] section.

These settings affect database backups only, with the exception that setting BackupFrequency to 0 will also disable automatic costume and base backups.

  • BackupFrequency: The number of days since the last backup that must have elapsed before another backup is created. Setting this to 0 will entirely disable the backup system.

    Default: 1 (create one backup per day)

  • BackupKeepDays: The number of days to keep backups (not counting today). May also be set to 0 to only keep the very latest backup, or -1 to never delete old backups.

    Default: 14 (keep two weeks worth of daily backups)

  • BackupKeepWeeks: The number of weeks to keep the first backup of each week (not counting this week). May be set to 0 to indicate no special treatment for weekly backups, or -1 to keep weekly backups forever.

    Default: 8 (keep two months worth of weekly backups)

  • BackupKeepMonths: The number of months to keep the first backup of each month (not counting this month). May be set to 0 to indicate no special treatment for monthly backups, or -1 to keep monthly backups forever.

    Default: -1 (keep monthly backups forever)

Codewalker

#1
I had originally put a copy of the initial patch notes here so it would be alongside the release announcement, but it caused confusion to people looking for patch notes for the minor post-1.1.0 fixes, which were only posted to the regular patch notes thread.

To simplify things, here is a link to the patch notes:
https://www.cohtitan.com/forum/index.php?topic=12448.msg227434#msg227434

Deledrius

Amazing work!  Thank you so much for adding this system! :D 

So far it all works wonderfully, and I've revived my old Supergroup base from a demorecord without incident.  I look forward to experimenting and building more, in ways I never could before. 

mdlittle

Alright, time to show the other games what base building can be!  ;D
"You're about to find out why they call me 'The Melee Blaster'!!!..."

Codewalker

I'd like to take the opportunity to thank everyone who signed up to be an early tester and helped work out the kinks before the release. They were putting up with a half-finished version for most of the process -- the final pieces and polish didn't come into place until the last few days.

Off the top of my head, in no particular order, Twi, slickriptide, Nyghtshade, Alimorel, saipaman, Pengy, crashpositron, and Tahquitz all played a big part in making this release happen smoothly. As did everyone who helped test, even those who didn't find anything to report, just by giving me a bigger cross-section of systems to find potential problems on.

Codewalker

To celebrate the release, here's an animation made out of the teaser images I've been posting on Twitter all day:

https://chat.cohtitan.com/announce/pchatayb.gif

MyriVerse

All my tears ARE belong to CW! (et al.)

Thanks for making this happen, CW, other coders, testers, etc.

*tears of joy*
aka Majadi | Sugar Cane | Absinthe | Killer Antz | Bogatyra | ...
Best Video Game of 2016 -- Paragon Chat!!!
Codewalker for Mayor of Paragon!

emperorsteele

This is wonderful news, I can't wait to get to play with this!

...except i got disconnected from the mapserver for trying to move the portal in the entryway, so... =/

Azrael

Quote from: Codewalker on July 29, 2018, 01:38:49 AM
Patch notes for version 1.1.0.2
Update branch: Release
Release date: 28 Jul 2018

Bases

  • Prevent XMPP rooms used for the broadcast channel in bases from being visible in the public directory of rooms.
XMPP

  • Attempt to solve the occasional "phantom player" glitch by adding a timeout to detect a player that is no longer present, but that we somehow didn't get an 'unavailable' presence in the meta channel for. This is the same glitch that can cause you to receive local chat from people in completely different zones because they think you are still near them.

  • Do not send position, velocity, or animation updates to the XMPP meta channel unless there are actually some players that are close enough to potentially be in visual range. This will signifantly reduce bandwidth usage when you're in a zone all by yourself -- say running around a base in edit mode.
Zones

  • Use unlimited if available, or the maximum number the XMPP server supports, as the default zone cap for zones that do not have a persistent meta channel already initialized (including bases).

Bases seem to be working just fine. 

The original Developmental version seemed 'ok' to me as well.

I like how when you do something, you implement it really well.  And the way bases fits into Paragon Chat is pretty much just like going to set up a super group in the original game.

Except this time, you can have your own private hide out if you wish.

Sure, some functionality isn't there but those are with regards to other parts of the game, Paragon Chat doesn't have implemented...yet.

Another significant step forward.

Well done.

Azrael.

Lycantropus

OH WOW!

I'm going out of town this week, but I really look forward to playing with this when I get back!

Thanks so much for all you do

Lyc~

waterwalk

I've been offline for more than a year. I can't believe I can see a base again. My wife reminded me I played before we got married. That I can't believe but it's true. Thank you so much for having me.

Nyghtshade

#11
I just wanted to mention that I post Paragon Chat activity announcements to 15 different COH groups on Facebook, and usually get a minimal to moderate response to them.  BUT, Friday evening I posted the link to here about bases going live, and the COH folks on FB are going crazy over it.  In one group alone, my post about the bases has drawn over 125 responses (most are "likes" and "loves", admittedly), and the responses have ranged from "WHAT???" and "Is this for REAL?" to "how do I get this!?!"

I've also notice a considerable uptick in population in PC this weekend, with a number of new folks logging in, and the global channel has been a veritable beehive of base talk, tours offered, and all kinds of "how-do-I" advice.  It's just darned heartwarming, and people are SOOOO excited about this latest development.

All Hail CodeWalker and his team!  *applause*  :D

Obliterate

Absolutely incredible work. I did not demorecord our supergroup base, but I am diligently working to re-create it based on old screenshots. Out of curiosity, does anyone remember the command to raise/lower an item when you are trying to place an item in the base builder? I remember there used to be advanced commands for functions like this, as well as rotating/flipping an item before placement.

Hoping those commands are also functional in Paragon Chat.

eabrace

Quote from: Obliterate on July 30, 2018, 07:57:37 PM
Out of curiosity, does anyone remember the command to raise/lower an item when you are trying to place an item in the base builder?
Funny you should ask!
https://www.cohtitan.com/forum/index.php?topic=13060.0
Titan Twitter broadcasting at 5.000 mWh and growing.
Titan Facebook

Paragon Wiki admin
I was once being interviewed by Barbara Walters...In between two of the segments she asked me..."But what would you do if the doctor gave you only six months to live?" I said, "Type faster." - Isaac Asimov

Nyghtshade

Wonder if there's any way to get the Base Tools Tips link stickied to the top of the Paragon Chat Global channel, so folks see it there every time they log in?   

Maybe useful, as well, to add the http://www.pchat.life/ link, since we have a lot of new people since bases went live?

Maybe even add the links for the regular Radio Broadcasts from P.C., and even mention weekly Thursday night Costume Contests in AP?

Codewalker

Not currently, there is no support for gmotd or for channel MOTDs.

Zarinel

And because Nyght asked me to, (don't blame her, blame me!) I am posting this here. Not sure if you want this someplace else, just let me know.

https://www.facebook.com/groups/275527532547553/permalink/1433210536779241/

...I will make this more permanent later, working on something to show what I mean by colors. Great work, Code! <3

slickriptide

Quote from: Zarinel on August 02, 2018, 06:34:58 PM
And because Nyght asked me to, (don't blame her, blame me!) I am posting this here. Not sure if you want this someplace else, just let me know.

https://www.facebook.com/groups/275527532547553/permalink/1433210536779241/

...I will make this more permanent later, working on something to show what I mean by colors. Great work, Code! <3

Holey, Moley! That's some impressive base building!

Zarinel

#18
Aw, thank you. It took me about two days just to load up everything and go off of screenshots that I had taken before. I had built about half the building and had to make it bigger. Had I known that you could literally SAVE your base beforehand, it would have helped me out. But now it gives me an excuse to build all over again and make things better!

(Edit: This has been edited, base work has been moved. https://www.cohtitan.com/forum/index.php?topic=13061.0 )

MyriVerse

Those are great, Zarinel. There's a post in the Base Building forum for showing off your stuff:

https://www.cohtitan.com/forum/index.php?topic=13061.0

That boat needs an interior, then it would be awesome!

Also, the Slow Field generators (there are tech and arcane versions) in Defense rooms make a water rippley effect. Could be useful there.
aka Majadi | Sugar Cane | Absinthe | Killer Antz | Bogatyra | ...
Best Video Game of 2016 -- Paragon Chat!!!
Codewalker for Mayor of Paragon!

Zarinel

Thank you! I will move it there and get this out of the way. I knew about the generators and would have used them; unfortunately, the teleport room is far bigger then the four generators it would allow me to place in there. So for the purpose of this boat, we are just going to have to pretend about that water. ;)

Pyron 2.0

Any way to get base teleporters working?

Tahquitz

Not at the moment. 

If you want to RP a teleporter and pretend it's 'working', just place a telepad and use /mapmove or /mapmenu to leave the base when standing there.
"Work is love made visible." -- Khalil Gibran