Author Topic: Darfix Portal  (Read 23691 times)

Anaris

  • Administrator
  • Exalted Emperor
  • *
  • Posts: 8525
    • View Profile
Re: Darfix Portal
« Reply #45: October 06, 2017, 01:55:29 AM »
How about supervised control? I have no idea how admin interface looks so I have no idea if it's doable, but it should be doable in most cases (altough overly complicated and work-intesive in a lot of cases):

Make senior and junior instance of user, say: admin and gm.

Admins can execute the stuff they do in admin panel, gms can submit the requests. Admins can later accept the requests and making the stuff go live.

A few things:
1) Any system that devolved control from the admins who currently run it would necessarily restrict the possible elements of a portal event. Building any kind of restricted system would by its very nature put limits on the kinds of things the people operating it could do; as admins, we are effectively unfettered in our decisions of how to respond to portals.

2) It's not really worth the amount of effort it would require to make a sort of duplicate, dumbed-down admin interface with restrictions on it; it's particularly not worth the amount of effort required to make one that tries to take even a modest subset of the current admin functionality and make it something that could be proposed and accepted. There are several worlds of difference between a system that just straight-up modifies values in the database, and one that creates a highly complex request, stores it in the database, and at a later trigger, executes it.

3) At least 85% of what you suggest could be done by simply having someone who is not me or Vita come up with ideas (complete with RP text) for the resolution of a portal event, which they proposed to us, and we then said "yeah, sure," and sent the message and executed whatever admin commands were needed to perform the changes it called for.

Quote
What do portal events do? They send a continent-wide message and create/update stuff in DB. You would need a mechanic to prepare sql statements and write them down in .txt, read from .txt and display it in friendly format and execute statements after admin's review. Another .txt for game messages. It's actually less complicated than I initially thought.

We are doing our level best to avoid raw SQL these days. That's how BM's code worked for way too many years, but it's far too fraught with potential pitfalls. We use a DB-abstraction framework called Doctrine now, and it makes the code both much easier to keep secure, and much easier to understand and modify.

Quote
I'm assuming that battlemaster is PHP & SQL (mySQL, postgres etc.), I don't know why I keep assuming that.

Well, I don't know why either, but it's true. PHP & MySQL.
Timothy Collett

"The only thing you can't trade for your heart's desire...is your heart." "You are what you do.  Choose again, and change." "One of these days, someone's gonna plug you, and you're going to die saying, 'What did I say? What did I say?'"  ~ Miles Naismith Vorkosigan