Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Denes

Pages: [1] 2 3
1
Complaint Department / Re: The thread has now been locked
« on: May 14, 2015, 04:25:38 am »
In my opinion as outsider, Roledā€™s idea for a witness on IRC is reasonable.
Assuming what GMs will tell or how offensive they will get isnā€™t but I guess it depends on what you want to achieve. Change? Justice? Revenge?
If we talk about constructive discussion, I gather this forum can provide that when it comes to events, RP, art or tech related topics. Otherwiseā€¦ well, you get what Iā€™m or others are doing now :)
I also think community would be best served if you Roled, the GMs and everyone could put this frustration behind and get back to roleplay, events and whatnot while not diminishing your legit right to raise concerns.
my thoughtsā€¦

PS:
Iā€™ve found freenodeā€™s web based IRC client works most of the time including my phone. Still, youā€™ll have to manually save the logs from the browser window. http://www.planeshift.it/IRC
   When you exhausted all other options you can look for the next in the food chain I guess which I understand you have to anyway to have the warning removed. http://www.planeshift.it/element/%7B%7D/Site%20images/Pages/Development/Organization_Chart.png

2
The Hydlaa Plaza / Re: sexism in gaming
« on: May 12, 2015, 03:42:16 am »
I would advise caution against forming a  community too much to your shape. You might find yourself alone one day.
This link alone warrants for a ā€˜parental control ruleā€™ IMHO and distasteful at best. I do wonder however if there are forums better suited for this part of reality.

3
In-Game Roleplay Events / Re: [Event] Festival of the Hammers
« on: March 31, 2014, 02:02:23 am »
It was lots of fun!
Thanks for all who participated and made it happen (Dalos and Rheos foremost) and congratulations for the winners!

4
PlaneShift Mods / Ignoring the Dead
« on: February 25, 2014, 07:37:21 am »
   So, instead of shuffling through mobs to look for a new target with ā€˜/target next npcā€™, it is possible to filter the fallen out. Something like ā€˜/target next alive npcā€™ can be implemented. Here is how it works for me:
Code: [Select]
Index: client/cmdusers.cpp
===================================================================
--- client/cmdusers.cpp (revision 9296)
+++ client/cmdusers.cpp (working copy)
@@ -650,46 +650,54 @@
     else if (words[0] == "/target")
     {
         if (words[1].IsEmpty()) {
-            return "You can use /target [self|clear] or /target [prev|next|nearest] [item|npc|player|any].";
+            return "You can use /target [self|clear] or /target [prev|next|nearest] [alive] [item|npc|player|any].";
         } else if (words[1] == "self")
             psengine->GetCharManager()->SetTarget(psengine->GetCelClient()->GetMainPlayer(),"select");
         else
         {
             SearchDirection dir;
-            csString tail;
+ char tailn;           
             if(words[1] == "next")
             {
                 dir = SEARCH_FORWARD;
-                tail = words.GetTail(2);
+                tailn=2;
             }
             else if(words[1] == "prev")
             {
                 dir = SEARCH_BACK;
-                tail = words.GetTail(2);
+                tailn=2;
             }
             else if(words[1] == "nearest")
             {
                 dir = SEARCH_NONE;
-                tail = words.GetTail(2);
+                tailn=2;
             }
             else
             {
                 dir = SEARCH_NONE;
-                tail = words.GetTail(1);
+                tailn=1;
             }
 
+ bool onlyAlive=false;
+ if (words[tailn] == "alive")
+ {
+ onlyAlive=true;
+ tailn++;
+ }
+ csString tail=words.GetTail(tailn);
+
             if (tail == "item")
                 UpdateTarget(dir, PSENTITYTYPE_ITEM, NULL);
             else if (tail == "npc")
-                UpdateTarget(dir, PSENTITYTYPE_NON_PLAYER_CHARACTER, NULL);
+                UpdateTarget(dir, PSENTITYTYPE_NON_PLAYER_CHARACTER, NULL, onlyAlive);
             else if (tail == "player" || tail == "pc")
-                UpdateTarget(dir, PSENTITYTYPE_PLAYER_CHARACTER, NULL);
+                UpdateTarget(dir, PSENTITYTYPE_PLAYER_CHARACTER, NULL, onlyAlive);
             else if (tail == "any")
-                UpdateTarget(dir, PSENTITYTYPE_NO_TARGET, NULL);
+                UpdateTarget(dir, PSENTITYTYPE_NO_TARGET, NULL, onlyAlive);
             else if (tail == "clear")
                 psengine->GetCharManager()->SetTarget(NULL, "select");
             else
-                UpdateTarget(dir, PSENTITYTYPE_NAME, tail);
+                UpdateTarget(dir, PSENTITYTYPE_NAME, tail, onlyAlive);
         }
     }
 
@@ -1364,7 +1372,8 @@
 // around to the nearest or furthest entity respectively.
 void psUserCommands::UpdateTarget(SearchDirection searchDirection,
                                   EntityTypes entityType,
-                                  const char *name)
+                                  const char *name,
+   bool onlyAlive)
 {
     GEMClientObject* startingEntity = psengine->GetCharManager()->GetTarget();
     psCelClient* cel = psengine->GetCelClient();
@@ -1428,6 +1437,11 @@
             || (entityType == PSENTITYTYPE_NAME &&
                 !csString(object->GetName()).StartsWith(name, true)))
             continue;
+
+ if ((onlyAlive) && (!object->IsAlive()))
+ {
+ continue;
+ }
 
         csVector3 pos = object->GetPosition();
 
Index: client/cmdusers.h
===================================================================
--- client/cmdusers.h (revision 9296)
+++ client/cmdusers.h (working copy)
@@ -96,7 +96,8 @@
 
     void UpdateTarget(SearchDirection searchDirection,
                       EntityTypes entityType,
-                      const char* name);
+                      const char* name,
+   bool onlyAlive=false);
 
 
     /// Struct to hold our emote data.

5
General Discussion / Re: Hunters & Looting
« on: January 23, 2014, 03:00:23 am »
How about when we recently (less than a year) started looting two hearts or two potions from the same beastie by chance? Could it be that those have something to do with each other?

6
General Discussion / Re: Hunters & Looting
« on: January 21, 2014, 04:41:08 am »
I too did notice that looting items with 2-3 good affixes is way harder than it used be. Now Iā€™m considering myself lucky with my gear because I know I couldnā€™t get anything like it starting out now.

7
PlaneShift Mods / /equip and /dequip a tiny bit differently
« on: December 07, 2013, 05:26:22 pm »
Little changes that might make ā€™reload arrowsā€™ or ā€™hammer closed ringā€™ shortcuts work smoother:
Code: [Select]
Index: client/cmdusers.cpp
===================================================================
--- client/cmdusers.cpp (revision 9059)
+++ client/cmdusers.cpp (working copy)
@@ -362,13 +362,22 @@
 
     else if ( words[0] == "/dequip" )
     {
-        if ( words.GetCount() < 2 )
-            return "Usage: /dequip [item name|slot name]";
+        if ( words.GetCount() < 2 || (words[1] == "stack" && words.GetCount() < 3))
+            return "Usage: /dequip [stack] [item name|slot name]";
 
         pawsInventoryWindow* window = (pawsInventoryWindow*)PawsManager::GetSingleton().FindWidget("InventoryWindow");
-        csString itemName( words.GetTail(1) );
+        csString itemName;
+ if (words[1] == "stack")
+ {
+ itemName=( words.GetTail(2) );
+ window->Dequip( itemName, true );
+ }
+ else
+ {
+ itemName=( words.GetTail(1) );
         window->Dequip( itemName );
     }
+    }
 
     else if ( words[0] == "/write" )
     {
Index: client/gui/inventorywindow.cpp
===================================================================
--- client/gui/inventorywindow.cpp (revision 9059)
+++ client/gui/inventorywindow.cpp (working copy)
@@ -288,8 +288,15 @@
     return NULL;
 }
 
+pawsSlot* pawsInventoryWindow::GetStackingSlot(const char* itemName, int stackCount)
+{
+    for ( size_t n = 0; n < bulkSlots.GetSize(); n++ ) //Iterate for first fit stacking slot
+ if ( (bulkSlots[n]) && (!bulkSlots[n]->IsEmpty()) && (bulkSlots[n]->GetToolTip().CompareNoCase(itemName)) && (bulkSlots[n]->StackCount()+stackCount<=65) ) //magical 65 used hardcoded in many places but also declared in psiem.h. include? MAX_STACK_COUNT?
+ return bulkSlots[n];
+    return NULL;
+}
 
-void pawsInventoryWindow::Dequip( const char* itemName )
+void pawsInventoryWindow::Dequip( const char* itemName, bool stack)
 {
     pawsListBox* bulkList = dynamic_cast <pawsListBox*> (FindWidget("BulkList"));
     if ( (itemName != NULL) && (bulkList) )
@@ -318,7 +325,15 @@
             int slot        = fromSlot->ID();
             int stackCount  = fromSlot->StackCount();
 
-            pawsSlot* freeSlot = GetFreeSlot();
+ pawsSlot* freeSlot = NULL;
+ if (stack)//Find a stacking slot
+ {
+ freeSlot = GetStackingSlot(fromSlot->GetToolTip(), fromSlot->StackCount());
+ }
+ if (freeSlot == NULL) //Need to look for an empty slot
+ {
+ freeSlot = GetFreeSlot();
+ }
             if ( freeSlot )
             {
 
@@ -353,12 +368,20 @@
                 // We found an item with a matching name.
                 // If the stack count matches the desired amount, we are done.
                 // Otherwise, keep looking for a better match.
+                if (slotDesc->stackCount == stackCount)
+ {
                 from = slotDesc;
-                if (slotDesc->stackCount == stackCount)
                     break;
             }
+ else if (from==NULL // if its first match
+ || ((from->stackCount<stackCount)&&(from->stackCount < slotDesc->stackCount)) // if storedslot stackcount (from) is smaller than what we wanted (stackCount), take the larger stack. '/equip 65 iron arrow' will take 45 over 35
+ || ((from->stackCount > slotDesc->stackCount)&&(slotDesc->stackCount>stackCount))) // if storedslot stackcount (from) is greater the examined (slotDesc) is greater than what we wanted (stackCount), take the smaller stack. '/equip 1 open steel ring' will take 10 over 65
+ {
+ from = slotDesc;
         }
     }
+        }
+    }
 
     if (from)
     {
Index: client/gui/inventorywindow.h
===================================================================
--- client/gui/inventorywindow.h (revision 9059)
+++ client/gui/inventorywindow.h (working copy)
@@ -66,6 +66,8 @@
 
     /// Get a free slot
     pawsSlot* GetFreeSlot();
+ /// Get a stacking slot returns NULL if no suitable found
+ pawsSlot* GetStackingSlot(const char* itemName, int stackCount);
 
     /** Equips an item into it's closest available slot.
      *  Will pick the first item of the given name in the bulk slots to try
@@ -84,7 +86,7 @@
      *
      *  @param itemName The name of the item in the inventory.     
      */   
-    void Dequip(const char* itemName);
+    void Dequip(const char* itemName, bool stack = false);
     
     /** Finds an item with the given name and attempts to open it as a book
      *  to write on.

So a ā€™/dequip stack iron arrow; /equip 65 iron arrowā€™ could first try to stack the ones you are holding with another in the inventory and then grab the stack which is closest to 65, so you donā€™t end up with several smaller stacks clogging the invo;
The same way ā€™/dequip stack dozen closed steel; /equip 1 dozen open steel rings; /useā€™ could stack the products and use up the smaller stack of materials first.

8
Wish list / Playing the Guard
« on: October 18, 2013, 04:04:20 pm »
   It hasnā€™t been till recently that I came to know that you could be ā€œbanned for being involved in a RP where someoneā€™s playing guardā€. That is a shame since working as a ā€˜reserve guardā€™ is an essential part of my mainā€™s RP and I canā€™t begin to imagine kra without it. Or even worse: get friendly chars in any kind of trouble.

   But personal feelings aside, here are some topics I can offer for our consideration:
-   rules clearly state players must not assume a guardā€™s role
-   easiest way to let others know ICly a GM is around regardless of their UI settings
-   There already is a quest for it. Jefecra  clearly states in ā€˜Joining the Guardsā€™ that: ā€œAnd now that joined our ranks, I've got...ā€(16-Nov-2012)
-   One of the easiest ways to create a ā€œgood side vs bad sideā€ scenario

Is there a way to preserve advantages while evading the contradiction?

9
Technical Help: IN GAME bugs (after loading world) / Re: Ojaveda crash
« on: October 06, 2013, 10:43:08 am »
You could try suggestions from here:

www.hydlaaplaza.com/smf/index.php?topic=41007.0

for a start..

10
That file has the following content on my PC:

Code: [Select]
<mirrors>
<mirror id="1" name="updater" url="http://194.116.72.94/update/" repair="true" />
</mirrors>

But if it got somehow corrupted the problem could stem from deeper than PS. The very least Iā€™d uninstall, delete residue files and install it again if had the same problem.

11
In-Game Roleplay Events / Re: The last of the Kelpslingers
« on: June 25, 2013, 02:25:39 am »
Laros places a little note in Esanorā€™s palm that reads: "Good job diverting the mob, brodr, so an ally can take his time goinā€™ after the real treasure. It is just that next time Iā€™ll want in. Remember, Iā€™ll be watching yeā€¦"  \\o//

12
Wish list / Re: Buyable travel tokens
« on: May 15, 2013, 05:28:26 am »
This latter kinda beats my original intentions: Me, being able to spend Tria in exchange for the time others with lower funds spend on the roads walking.

Instead this would allow them to exchange time spent on: roads walking or looting and such to get Tria, for time spent in cities doing quests eventually leading to us bumping to each other. I could live with that happily I guessā€¦  :)

OFF:
meant to be a dangerous place not the next bus stop
;D
Sure feels like it. But then again, I wish I had a better idea how to ask players to prove their determination for a mount, training, rock pick or whatever.

13
Wish list / Re: Buyable travel tokens
« on: May 14, 2013, 01:54:00 pm »
thank you LigH  ;) ... but I meant: I'm not sure how much it's worth to be able to buy an expensive ticket while you can simply pay the right amount of trias. Sure you can gift it but: is it worthwhile to do spend development time on it? would you use it for real?

  About development time I canā€™t be sure. Say you need: a settings dev to review the idea and designate one or more NPC 15mins, a dev who can access the SQL database and runs ~4 commands 20mins. Say that is 1/3 of the time those two individuals spend with developing for us in a week. We still canā€™t say if it is worthwhile, since I cannot know what else is in the queue and how task are prioritized.
  As for the other part, you are probably right if you put it this way. I assumed their existence was well grounded since they are in game already. But that raises another question: If we only use it as a bank note worth 1000-2500 Tria depending on the situation why burden the database with them at all? 

PS: No offence, sarcasm, pointing fingers ment, just trying to ask constructive questions to find whatā€™s best for all. Thank you all for even considering.

14
Wish list / Re: Buyable travel tokens
« on: May 12, 2013, 09:41:42 am »
I wouldnā€™t do quests to help semi-strangersā€¦ I was more looking for a way to transfer money from an established player to a new one as it is problematic at times to simply give circles to them. We could consider it ā€žTria sinkā€, yes. 6 or 8 circles maybe?

15
Wish list / Buyable travel tokens
« on: May 12, 2013, 06:44:47 am »
As a means of supporting new players and to allow them to spend less time with hiking.

Pages: [1] 2 3