4Dimensions Forum

General Category => Suggestions & Ideas => Topic started by: Jaros on September 13, 2011, 09:04:05 am

Title: A socials shop.
Post by: Jaros on September 13, 2011, 09:04:05 am
At risk of adding another thing to the list  :-\  I think this would be really cool.  Scenario:

You write yourself a brand new social and apply it to any command you like.  Could be anything at all; now functions just like any other social, but only for you.

Someone sees you use it, they like it, they want it, so they wander down to the little socials market and find it on the list, next to your name because you created it.

They pay for it, at whatever price you've named, and it's now theirs to use as well for ever and ever until they buy a new one that happens to use the same command and thus replaces it.

Then we have stats showing the most popular ones and who is making the most money off it all etc. just for anyone who's interested.

Thoughts?
Title: Re: A socials shop.
Post by: Xeriuth on September 13, 2011, 09:25:36 am
I like this idea! Definitely great for RP!
Title: Re: A socials shop.
Post by: Jaros on September 14, 2011, 08:14:05 pm
.. No one else thinks it would be cool to be able to write your own socials?  *boggle*
Title: Re: A socials shop.
Post by: Riley on September 14, 2011, 09:51:29 pm
Not really... I mean you do have emote which gives you free reign to do what ever you like.  And than you have Pose to do some other nasty things involving your name either in it or not in it just only due to abuse people know who is doing it.
Title: Re: A socials shop.
Post by: Jaros on September 14, 2011, 10:05:06 pm
Emote is a pain in the ass and displays differently.  As in it doesn't target people.  Pose is lame.  Also with this we get the added bonus of a little market to trade them in, people can get creative.
Title: Re: A socials shop.
Post by: Kvetch on September 14, 2011, 10:07:59 pm
Hey, I had a contest for people to write their own 4D social... not many people took the time.  I think emote and pose are good enough, though even as I say that, I do see the intrigue in it.
Title: Re: A socials shop.
Post by: Jaros on September 14, 2011, 10:13:36 pm
Exactly, there is potential in things like this.  If the option can be provided without much hassle, why not provide it?  Doesn't do any harm, adds to the game for some.

An ongoing place where you can create your socials, display them and sell them is quite different to a one-off contest, but good job running it all the same  :)
Title: Re: A socials shop.
Post by: Asmodeus on September 14, 2011, 10:20:06 pm
As someone who DID participate in the socials contest, I think its a good idea!  And jaros is right, it's not going to cause any problems, just perhaps make some people some money and give more interaction as opposed to non-targeting emotes and poses.
Title: Re: A socials shop.
Post by: Molly on September 15, 2011, 01:08:22 am
I think it would be a lot more constructive to work on a targetting emote code, which displays differently to sender, target and room, just like the socials do.
I've seen RPI mud with this kind of improved emote commands, so it cannot be impossible to code.

And although I am for every idea that leads to more trading and interacting between players, I'm not sure a socials shop would, because writing socials needs some time and skill. And like Kvetch already pointed out, not many contributed to her socials contest, probably for that reason.
Title: Re: A socials shop.
Post by: Jaros on September 15, 2011, 01:59:24 am
.......................

Writing a social takes some time and skill?  Are you serious?  My dog could do it.

fleas

You stand up and shake fleas all over everybody.

fleas <target>

You lean towards <target> and shake fleas all over them.  How rude.

Done.  I don't want to waste precious seconds of a convo typing that out and emoting it, I want to have that command at my fingertips.  Incidentally, so might someone else...... if only they could go buy it somewhere and use it themselves.  Hurrah, they did and I made a million coins and overtook Xeriuth's stupid square_dance.

Probably not many contributed to the contest because that means making one up, probably not winning, and then not being able to use it.  Effort wasted.  In this case if you think of something you can make it and use it and get the enjoyment immediately.  AND so can everyone else if they want.
Title: Re: A socials shop.
Post by: horus on September 15, 2011, 03:48:24 am
I like your idea Jaros, but I like to make one minor point - just because you think its as simple as a few lines doesn't mean you are right :p

What you see if there is no target.
What you see if there is a target.
What the room sees if there is no target.
What the room sees if there is a target.
What the target sees.

I believe there are a few other lines, I can't remember off the top of my head. Some are optional, and some are a must.

In so saying that, I still like your idea, but please realise, just because YOU cannot see how complicated it is, does not mean it might not be.
Title: Re: A socials shop.
Post by: Jaros on September 15, 2011, 04:01:58 am
Fair point.

Worst case scenario, someone has to fill in three lines more than they expected  :o
Title: Re: A socials shop.
Post by: horus on September 15, 2011, 09:03:32 am
Sigh, again, you just think all the player has to do is make sure they fill out all the necessary lines. Now, let us look at the entire issue:-
- Make sure social shop saves to file dynamically. Make sure player file is also updated to show they can use this social.
- Any new social purchased means adding a new command. This means, making sure the new social saves to file (for shop), updating the main social file, re-loading the entire social file again into memory so that the command is recognised. Depending on how the commands are loaded, we may have to re-load the entire command structure as well. (Otherwise, a copyover is needed. NOTICE how whenever something new is added, a copyover is needed? What you are asking is for something that doesnt require a copyover). Save the new social in the social shop file with the creator's name, save the creator's pfile to show this creator can use the command.
- Because this social can only be used by the specific person who has purchased it, you will need to edit the entire command structure to also check player file if the person has the right to use this command.
- Everytime a social is purchased, the purchaser's pfile needs to be updated.

Two main issues stand out:-
1. It is NEVER a good idea to allow players to directly write to disk. In this case, players are able to create new socials on demand, which makes the mud save to disk a fair amount of information. Disk writes slows the mud down, especially if someone decides to spam this command.
2. It is NEVER a good idea to change the command structure. If something goes wrong, it affects EVERYONE with every single command, so the mud becomes totally unplayable.

Now with further thinking, there may be ways around this but the reason why I wanted to post this is to explain to people the thought processes behind whether ideas are "worth" the effort of implementing. Now coders do not have the time nor the inclination to explain all the issues every single time someone has an idea, and then to debate how worthy their ideas are over the amount of effort to complete the code.

Title: Re: A socials shop.
Post by: Molly on September 15, 2011, 11:00:10 am
Thanks for that explanation, Horus. It was needed.

Cool ideas that seem easy for those who only see the player side of things, are not necessarlily easy to code, build or script. Sometimes they might be, but only the ones who actually work with those things will be able to assess them.

Incidentally, that's why I unevitably tell anyone, who comes with me with a request or idea that involves coding, to talk with the coders about it instead. Because I simply don't have a clue about if something is easy or hard to do, since I know very little about code. But at least I know enough to realise how little I know.

So whenever you get frustrated because some idea that sounded so good in theory isn't getting implemented, remember Horus's post. If you want people to spend their spare time coding for free for a mud, don't expect them to always explain in detail why something is or isn't possible - or even desireable.

Title: Re: A socials shop.
Post by: Calypso on September 15, 2011, 02:10:16 pm
Keep it coming, Horus. Jaros loves it when you talk dirty.
Title: Re: A socials shop.
Post by: Calypso on September 15, 2011, 03:21:13 pm
I found what Horus was trying to say in the form of a cartoon for those who tl:dr 'd it.

http://xkcd.com/277/
Title: Re: A socials shop.
Post by: Xeriuth on September 15, 2011, 05:29:50 pm
Perhaps simply make a board for social in the social shop, Can post what you want to be a social and if enough people give it a thumbs up, and imm, or a hero/rpl (if given the ability), can add the social to the game with the command. Then simply have an imm at a later time do all of the things horus mentioned with copyovers and such.
Title: Re: A socials shop.
Post by: Jaros on September 15, 2011, 06:20:14 pm
Thanks Horus, that's exactly the kind of input I've been looking for in every thread I've started.  Not this OMG people might make dirty words crap.
Title: Re: A socials shop.
Post by: Kvetch on September 15, 2011, 08:49:12 pm
Ok: this is how "easy" it is to make a social:  Fill in all these lines and use the correct variables:

n) Command         : <name of social>         1) Sort as Command  : <name of social on social list>         
2) Min Position[CH]: Standing        3) Min Position [VT]: Standing
4) Min Level   [CH]: 0               5) Show if Invisible: NOT HIDDEN
a) Char    [NO ARG]: <what the character sees without a victim>
b) Others  [NO ARG]:  <what the room sees when no victim>
c) Char [NOT FOUND]: <what the character sees if victim is not found>
d) Char  [ARG SELF]: <what the character sees if victim is self>
e) Others[ARG SELF]: <What the room sees when victim is character’s self>
f) Char      [VICT]: <What the character sees when they have a victim>
g) Others    [VICT]: <What the room sees when the character has a victim>
h) Victim    [VICT]: <What the victim sees when the character has a victim>
i) Char  [BODY PRT]: <Used only if  this social can be used with the body part of victim>
j) Others[BODY PRT]: <What room sees if character uses body part of victim>
k) Victim[BODY PRT]: <What victim sees if character uses body part of victim>
l) Char       [OBJ]: <What character sees if victim is an object>
m) Others     [OBJ]: <what room sees if victim is an object>

But instead of using <player> or <victim> you have to know these variables:
$n = you, $N = target, $m him/her/it for you, $M him/her/it for target
$s = his/her/it for you, $S = his/her/it for target
$e = he/she/it for you, $S = he/she/it for target

Example: Poke
n) Command         : poke            1) Sort as Command  : poke           
2) Min Position[CH]: Resting         3) Min Position [VT]: Resting
4) Min Level   [CH]: 0               5) Show if Invisible: NOT HIDDEN
a) Char    [NO ARG]: Poke who? What? Where?
b) Others  [NO ARG]: <Null>
c) Char [NOT FOUND]: You can't poke someone who's not here!
d) Char  [ARG SELF]: You poke yourself in the ribs, feeling very silly.
e) Others[ARG SELF]: $n pokes $mself in the ribs, looking very sheepish.
f) Char      [VICT]: You poke $M in the ribs.
g) Others    [VICT]: $n pokes $N in the ribs.
h) Victim    [VICT]: $n pokes you in the ribs.
i) Char  [BODY PRT]: You poke $M in $S $t.
j) Others[BODY PRT]: $n pokes $N in $S $t.
k) Victim[BODY PRT]: $n pokes you in your $t.
l) Char       [OBJ]: You poke at $p.
m) Others     [OBJ]: $n pokes at $p.
Title: Re: A socials shop.
Post by: Virisin on September 15, 2011, 08:56:36 pm
Loria pokes Kvetch.
Title: Re: A socials shop.
Post by: Asmodeus on September 16, 2011, 07:33:43 am
So Kvetch... its pretty easy?
Title: Re: A socials shop.
Post by: Calypso on September 16, 2011, 01:32:25 pm
Loria pokes Kvetch.

from afar
Title: Re: A socials shop.
Post by: Kvetch on April 29, 2012, 09:22:37 pm
There has been a bit more interest in this so, I see there is a typo in the variables above so here is the correct ones:

But instead of using <player> or <victim> you have to know these variables:
$n = you, $N = target, $m him/her/it for you, $M him/her/it for target
$s = his/her/it for you, $S = his/her/it for target
$e = he/she/it for you, $E = he/she/it for target


Title: Re: A socials shop.
Post by: Kvetch on April 30, 2012, 11:39:24 am
To maybe make it a little more easier for those that want to do socials let me show you an easier way to know what variable you need.

1) all lowercase letters for the person doing the social, uppercase for the victim of the social
2) n=name so $n would be the name of the person doing the social and $N would be the name of the victim of the social
3) Using the male version of the pronoun you want helps figure out which letter you need.
 - e = he/she, m = him/her, s = his/her - again, capitalize for victim