I use GIMP 2 for image manipulation. It's not nearly as versatile as photoshop, but it's free.
Cuz who likes paying several hundred or more dollars for photoshop software
I use GIMP 2 for image manipulation. It's not nearly as versatile as photoshop, but it's free.
Yeah, the girls don't like gaining exp correctly.Is there anything I can do to prevent that, to keep fights entertaining (the level gap really hurts the girls after a while) ?
What's the difference between a power and a normal skill? If you enter into a match with the powers only requirement, can you not even use Fondle Breasts? This feels like it needs to better describe where the line is. Also, I don't think Animism or Ki actually have in-built ways to deal pleasure damage at all. Unless Tail Job counts? Not sure if that counts as a skill or a power, since it can be unlocked with Seduction or Animism.Suggestions for new Challenge types:
- Victories using only powers.
- Victories using only normie skills.
- Victories won having used a trap.
@12centDime
Pretty much. You need powers, not normal skills. In order to win, you must build the mojo and use them or try to gain some sort of map advantage on someone or choose your target carefully.
Can you define powers and normal skills? Those aren't terms used in the game, unless they've been added to the mod without me noticing.
Thanks! DNDW are you planning to continue putting out releases?
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at nightgames.characters.Character.resolvePostOrgasmForOpponent(Character.java:2418)
at nightgames.characters.Character.resolveOrgasm(Character.java:2101)
at nightgames.characters.NPC.resolveOrgasm(NPC.java:862)
at nightgames.characters.Character.doOrgasm(Character.java:2034)
at nightgames.characters.Character.resolvePleasure(Character.java:867)
at nightgames.characters.body.Body.pleasure(Body.java:821)
at nightgames.skills.Tighten.resolve(Tighten.java:80)
at nightgames.skills.Skill.resolve(Skill.java:245)
at nightgames.combat.Combat.resolveSkill(Combat.java:1255)
at nightgames.combat.Combat.doAction(Combat.java:1052)
at nightgames.combat.Combat.turn(Combat.java:878)
at nightgames.combat.Combat.resumeNoClearFlag(Combat.java:302)
at nightgames.combat.Combat.resume(Combat.java:312)
at nightgames.gui.GUI.lambda$14(GUI.java:1519)
at nightgames.gui.RunnableButton.lambda$0(RunnableButton.java:15)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
public void upkeep() {
getTraits().forEach(trait -> {
if (trait.status != null) {
Status newStatus = trait.status.instance(this, null);
if (!has(newStatus)) {
addNonCombat(newStatus);
}
}
});
regen();
tick(null); //FIXME: This is the culprit of the Addiction NPE outside of combat. Nulls are not handled by methods used within tick and Addiction.tick()
if (has(Trait.Confident)) {
willpower.restore(10);
mojo.reduce(5);
} else {
willpower.restore(5);
mojo.reduce(10);
}
if (has(Trait.exhibitionist) && mostlyNude()) {
mojo.restore(2);
}
dropStatus(null, null);
if (has(Trait.QuickRecovery)) {
heal(null, Global.random(4, 7), " (Quick Recovery)");
}
update();
notifyObservers();
}
In the Imbue Fetish ability, can you somehow alter it to choose which one you want to imbue?
Expand the corruption tag/description to all body parts
Getting lonely in here!
Latest on my fork has - among other things - a simple help command added to debug window, which displays available commands. Now we don't have to keep posting it.
If there's any requests, get em in!
When characters get corrupted by reyka, all of their body parts do too. Just descriptions for tf's and parts after the TF's. Honestly, i just want to see more succubus footjobs and footfag related crap. But that is it. I also think the skill drain when you (the pc) get corrupted or addicted is WAY too high, it is nearly impossible to play with so much as one addiction.
The only thing I would personally want would be for the moves list to keep being updated.
The one that tells what each skill/passive buff is called, as well as what it does.
Otherwise I would like to thank you all for the great work, and to remind you all to take breaks.
Last thing that is needed is for somebody to be overworked from something like a game mod.
Sleep, Food, and mental relaxation via gaming/TV/sports.
With that you won't burn out from all work and no play. <3
It's been another quiet spell for me. Part of that is a lack of time (which is unlikely to change soon), and if I'm being honest, another part is that I just haven't felt like working on this game lately.
Since I very much doubt that nergantre is going to play an active role here any time soon, I think I can speak for the both of us to just give you a blanket permission to do whatever you'd like, @DarkSinfulMage. I completely agree with your list of priorities, except that I don't think a shift to XML would be worthwhile. It and JSON are mostly analogous, and I can't think of any benefit the change would have. You say it's more commonplace, but I doubt that. Besides, as long as there is good tool support (which there is), what does popularity matter?
So I'd be happy to answer any questions, but I don't think I'm going to be contributing anything new in the near future.
@Override
public void tick(Combat c) { //FIXME:outside of combat, c becomes null. Perhaps separate this method into an in and out of combat version?
if (c == null) { //A patient comes into the doctor's office and says it hurts when I do this; the doctor says "Well, don't do that..." - DSM
System.out.println("ERROR: Tried to process " + this.name + " from " + this.cause + ", but Combat c is null in Addiction.tick()");
} else {
if (c.getOpponent(affected).equals(cause)) {
combatMagnitude += magnitude / 14.0;
}
}
}
int stanceDominance = getStance().getCurrentDominance(this, self).ordinal();
if (stanceDominance <= Position.Dominance.NEUTRAL.ordinal()) {
return;
}
Character other = getStance().getPartner(this, self);
Addiction add = other.getAddiction(AddictionType.DOMINANCE).orElse(null); //FIXME: Causes trigger even though addiction has 0 magnitude.
if (add != null && add.atLeast(Severity.MED) && !add.wasCausedBy(self)) {
write(self, Global.format("{self:name} does {self:possessive} best to be dominant, but with the "
+ "way Jewel has been working {self:direct-object} over {self:pronoun-action:are} completely desensitized." , self, other));
return;
}
write(self, Global.format("{self:name} does {self:possessive} best to be dominant, but with the "
+ "way "+ add.getCause().getName() + " has been working {self:direct-object} over {self:pronoun-action:are} completely desensitized." , self, other));
Just to clarify, i was wondering if the tf's could apply to feet and hands and such. Not sure if those are counted. That what i meant when i said bodyparts and descriptions.
Ah, got it.
What is the newest version of the game other than the official release? I would like to play it.