Can a polymorphed creature understand langues spoken under the effect of Tongues?

Let’s say we have a spy that has been True Polymorphed into a sheep (to blend in, obviously). The spy originally knew Common + some other languages. As a sheep, though, she can only bleat.

True Polymorph includes in the description (emphasis mine):

The target’s game statistics, including mental ability scores, are replaced by the statistics of the new form. It retains its alignment and personality.

[…]

The creature is limited in the actions it can perform by the nature of its new form, and it can’t speak, cast spells, or take any other action that requires hands or speech, unless its new form is capable of such actions.

Let’s further say that the sheep is spying on some cultists at the local farm. One of the cultists is speaking a language that the spy did not originally know and has cast Tongues on himself to communicate with his bretheren.

Tongues says (emphasis mine):

This spell grants the creature you touch the ability to understand any spoken language it hears. Moreover, when the target speaks, any creature that knows at least one language and can hear the target understands what it says.

Assuming our woolly friend is close enough to hear, does she know what’s being said?

More specifically: Can a creature that knows a language, after having been polymorphed into a beast, understand or speak any language at all (Sheep, Cow, Pig, etc.), such that it could understand someone speaking under the effect of Tongues?

How do I handle a group that does not understand the ‘assumption rule’?

1st rule of D&D (as of 3rd edition/pathfinder): The GM is the final arbiter on all rules.

I understand this, completely, and do not disagree. That said, I’m having trouble with a group that doesn’t seem to understand what I call the ‘assumption rule,’ which is as follows.

Assumption Rule: Unless and until the GM makes a ruling to the contrary, the rules of the game are assumed to be as they are stated in the book.

I have yet to find anywhere that it actually says this, but it just seems like common sense to me. If I cannot assume, at least for the majority of the time, that the rules of the game are as they are stated in the books we’re using to play the game, how can I expect to be able to make and use a character that I made with those rules in mind?

Also, I’m not referring to one instance. This is not me complaining about a GM denying me the ability to abuse one minor loophole in the system to break the game. The group I am referring to will, as soon as anyone says anything like ‘the book says,’ almost yell ‘the GM trumps book.’ Whether or not the GM has actually said anything about making a ruling, or even disagreeing with the book in the first place.

The biggest issue I’m having with this is that, for the current campaign, the GM we have is relatively new, and isn’t an expert on the rules, as they are depicted in the book. He is so used to playing with this same group, that he assumed a common house rule to actually be the rule as it was stated in the book. (The rule in question was the re-rolling of 1’s when rolling stats. He was surprised when I asked him if we were doing that for his game.) This is becoming a frequent problem for me, as I play in multiple groups, and house rules vary between them. So, I’m forced to fall-back on the ‘assumption rule’ more often then not, only to have it blow up in my face every time I try to use a completely-legal tactic to gain an advantage in combat, or make a check that the rules say I can make, then have the group turn on me when I point that out because the GM did not specifically state that we weren’t using that rule.

UPDATE: To clarify something I’m not entirely sure everyone reading this is getting, I’m not being a ‘rules-lawyer.’ I’m not quoting the rule book religiously, or trying to use it to argue with the GM, or anything like that. I’ll do something like try to change a random NPC’s opinion of my character with a diplomacy check, only to be told that I have to role-play it out. It won’t be someone important to the plot, or even someone that I could potentially get some huge advantage from. This exact situation was me trying to rp my character talking the bartender into giving him a minor discount. And it was the group that told me I had to RP it, not the GM.

Or, as another example, during one combat session, I said that I was going to use the withdraw action, only to have the whole table look at me like I was stupid, except the GM who just looked confused. When they (the group, not the the GM) told me that I would take an AoP for it, they yelled their ‘GM trumps rules’ mantra at me just because I looked up what a ‘withdraw action’ is.

This is not a rant. I’m not trying to vent about something. I’m trying to convey what happened, as it happened, and ask for advice on how best to deal with this. Answers from experience would be appreciated, but I will listen to any advice anyone has to offer.

I like the group, and I enjoy being part of the campaigns they play, it’s just this one issue that seems to keep coming up. I would hate for something like this to get me kicked out.

What to learn if I really want to understand the Interactive Brokers Python API?

Thanks to ib_insync package, it really saves me a lot of time in playing around with the IB API. But I found myself completely not understand the IB API, such as Ewrapper, and EclientSocket.

If I would like to know more about the API, what kind of knowledge/ Topics in Python is needed?

I would like to pick up a book, read, and learn more.

Trying to smooth a scroling animation and understand why my text disappear momentaneously

I’m developping a website to learn a bit more about javascript, css and html. A draft of this website is here : http://test13111983.free.fr/

I’m having some trouble with the scrolling : scrooling up and down triggers an horizontal scroll.

When I’m scrolling down and up with the trackpad on my laptop the animation is quite smooth on Chrome, but horrible on Firefox.

Besides on Chrome the left part of the page tend to disappear momentaneously when I’m scrolling back up.

Here’s the js code I use for the scrolling :

var scroll = 0; var target_page = ""; var round = 0; var speed=50; var timeout = null; var diff = 0;  $  ('.accueil').on('mousewheel DOMMouseScroll', function(e){ if(typeof e.originalEvent.detail == 'number' && e.originalEvent.detail !== 0) {   if(e.originalEvent.detail > 0) {     scroll++;   } else if(e.originalEvent.detail < 0){       scroll--;   } } else if (typeof e.originalEvent.wheelDelta == 'number') {   if(e.originalEvent.wheelDelta < 0) {       scroll++;   } else if(e.originalEvent.wheelDelta > 0) {       scroll--;   } }  if(scroll>0){   round = Math.trunc(scroll/speed);   target_page = '.page:eq('+(numItems-round-2)+')';   $  ('.accueil').css("width", (0.32+0.2*(numItems))*$  (window).innerWidth()+0.3*$  (window).innerWidth()*scroll/speed);   $  ('.accueil').css("left", -0.5*$  (window).innerWidth()*scroll/speed);   $  (target_page).css("width", 0.2*$  (window).innerWidth()*(1+1.5*(scroll/speed-round)));   $  (target_page+' .photo').css("height", -0.01*$  (window).innerHeight()+0.2*$  (window).innerHeight()*(1+1.5*(scroll/speed-round)));   $  (target_page+' .photo').css("width", -0.01*$  (window).innerWidth()+0.2*$  (window).innerWidth()*(1+1.5*(scroll/speed-round)));   if(scroll/speed- round > 0.5){$  (target_page+' .numero').css("color", "#000");}else{$  (target_page+' .numero').css("color", "#eaeaea");}   $  (target_page+' .titre, '+target_page+' .date, '+target_page+' .categorie, '+target_page+' .sous_titre, '+target_page+' .numero').css("margin-left", 0.2*$  (window).innerWidth()*(0.05+1.5*(scroll/speed-round)));    clearTimeout(timeout);      timeout = setTimeout(function() {         if(scroll/speed- round <= 0.5){scroll=round*speed;$  (target_page+' .numero').css("color", "#eaeaea");}         else{scroll=(round+1)*speed;$  (target_page+' .numero').css("color", "#000");};         $  ('.accueil').css("width", (0.32+0.2*(numItems))*$  (window).innerWidth()+0.3*$  (window).innerWidth()*scroll/speed);         $  ('.accueil').css("left", -0.5*$  (window).innerWidth()*scroll/speed);         $  (target_page).css("width", 0.2*$  (window).innerWidth()*(1+1.5*(scroll/speed-round)));         $  (target_page+' .photo').css("height", -0.01*$  (window).innerHeight()+0.2*$  (window).innerHeight()*(1+1.5*(scroll/speed-round)));         $  (target_page+' .photo').css("width", -0.01*$  (window).innerWidth()+0.2*$  (window).innerWidth()*(1+1.5*(scroll/speed-round)));         $  (target_page+' .titre, '+target_page+' .date, '+target_page+' .categorie, '+target_page+' .sous_titre, '+target_page+' .numero').css("margin-left", 0.2*$  (window).innerWidth()*(0.025+1.5*(scroll/speed-round)));      }, 1000); }   else{scroll=0;}      });  

What the code does on scroll is 1) widdening a div 2) and the page 3) and move it horizontally

I would like a cross-browser smooth and efficient transition. Any advice ?

Thanking you in advance.

Is there a document or materials for me to understand reporting hierarchy within the organization?

I am designing a platform for CEO to compare reporting hierarchy from last year to today so he can see the employee changes in the company.

Here is the use case..

MJ is a CEO at ACME. ACME recently went through massive changes in the internal organizational Structure. Some employees were promoted, some had left, some were hired, some moved Departments, while others remained in the same position. MJ wants to compare the reporting hierarchy from last year to today so he can see the employee changes in the company.

Acceptance Criteria • Side-by-side comparison view of the two hierarchies to easily compare. • Have a way for the user to quickly know the changes between the two hierarchies: promotions, Resignation, new hires. • Have a way for the user to search for an employee and view its location within both hierarchies.

Non-functional requirements • ACME currently has 2000+ employees • ACME’s reporting structure is at most 5 levels deep

Please let me know if there are any similar concept available in the industry or you guys can feed me in with your thoughts..

Need to understand the refusal reasons of UK standard visit visa

I applied for UK standard visit visa (6 months) for tourism, and meeting cousin who lives there. The reasons of refusal they gave are attached in pictures.

Can you explain points 1 to 5? And it would be great if you can tell what I need to provide for each of them.

For point 1, I did not provide anything. What should I provide?

I assume I will have to re-apply now. Right?

Should I include documents again which I already provided earlier?

enter image description here enter image description here

I have a Schengen Visa, and I applied for UK visit visa from a country (not my national country). But it’s not the problem.

How do I write unit tests for legacy code (that I don’t understand)?


Forward

I’ve read a lot of things before asking this question, including many relevant questions right here on SE:

  • (Software Engineering SE) Writing tests for code whose purpose I don’t understand
  • (Software Engineering SE) Unit testing newbie team needs to unit test
  • (Software Engineering SE) Best practices for retrofitting legacy code with automated tests
  • (Software Engineering SE) How to unit test large legacy systems?
  • (Blog post) How to mock up your Unit Test environment

However, I can’t help but feel that the itch hasn’t been scratched yet after reading for help.


TL;DR

How do I write unit tests for legacy code that I can’t run, simulate, read about, or easily understand? What regression tests are useful to a component that presumably works as intended?


The Whole Picture

I’m a returning summer intern again as I’m transitioning into grad school. My tasking involves these requirements:

  1. For a particular product, evaluate whether our software team can upgrade their IDE and JUnit version without losing compatibility with their existing projects.
  2. Develop unit tests for some component in the existing Java code (it’s largely not Java). We want to convince the software team that unit testing and TDD are invaluable tools that they should be using. (There’s currently 0% code coverage.)
  3. Somehow, end the days of cowboy coding for a critical system.

After obtaining a copy of the source code, I tried to build and run it, so that I might understand what this product does and how it works. I couldn’t. I asked my supervisors how I do, and I was issued a new standalone machine capable of building it, including the build scripts that actually do. That didn’t work either because as they should’ve expected, their production code only runs on the embedded system it’s designed for. However, they have a simulator for this purpose, so they obtained the simulator and put it on this machine for me. The simulator didn’t work either. Instead, I finally received a printout of a GUI for a particular screen. They also don’t have code comments anywhere within the 700,000+ Java LOC, making it even harder to grasp. Furthermore, there were issues evaluating whether or not their projects were compatible with newer IDEs. Particularly, their code didn’t load properly into the very IDE version they use.

My inventory is looking like this:

  • NetBeans 8, 9, 10, 11
  • JUnit 4, 5
  • Their source code for a particular product (includes 700,000+ Java LOC)
  • Virtually no code comments (occasionally a signature)
  • No existing tests
  • A physical photo of a GUI window
  • A software design document (109 p.) that doesn’t discuss the component in the picture

I at least have enough to theoretically write tests that can execute. So, I tried a basic unit test on this said component. However, I couldn’t initialize the objects that it had as dependencies, which included models, managers, and DB connections. I don’t have much JUnit experience beyond basic unit testing, so follow me to the next section.


What I’ve Learned From My Reading

  1. Mocking: If I write a unit test, it likely needs to have mock variables for production dependencies that I can’t easily initialize in setUp.
  2. Everyone here liberally suggests the book “Working Effectively with Legacy Code” by Michael Feathers.
  3. Regression tests are probably a good place to start. I don’t think I have enough weaponry to attempt integration testing, and regression tests would provide more instant gratification to our software team. However, I don’t have access to their known bugs; but, I could possibly ask.

And now an attempt to articulate the uncertainty I still have as a question. Essentially, I don’t understand the how part of writing these tests. Assuming I don’t receive any further guidance from my supervisors (likely), it’s in my ballpark to not only learn what this component does but to decide what tests are actually useful as regression tests.

As professionals who’ve worked with projects like this longer than I have, can you offer any guidance on how to write unit tests in this kind of situation?