As a quick/simple example, I created a new part document, created two simple numerical user parameters in it, created two internal rules in it, and created one internal form in it. The param named "Param1" is set to 5 (inches), the param named "Param2" is set to 1 (inches). The first rule named "Rule1" simply creates a NameValueMap, adds a single name/value pair entry into it that is simply a modified version of the first parameter's name, and its value is the unquoted name of Param1, so that its value will be implied. Then it uses iLogicVb.RunRule("Rule2", oMap), where "Rule2" is the name of the other internal rule, and oMap is the variable for the NameValueMap. Then within Rule2, It simply sets the value of Param2 = the value retrieved from the RuleArguments NameValueMap entry that was sent to it, plus 3. Then within the form, I drag Param1 over into the form, then drag Rule1 over right under that. When I click on the Rule button, then check the Parameters dialog (while the form is still active/visible/open on my screen), and the value of Param2 has been changed from 1 to 8, which matches what I wanted to happen.
Wesley Crihfield

(Not an Autodesk Employee)